Skip to main content

உபுண்டு பேக்கேஜிங் கையேடு - டெபெல்பருடன் பேக்கேஜிங்

Anonim

டெபல்லர் உடன் பேக்கேஜிங்

முக்கியமான

தேவைகள்: "ஸ்கிரேட்ச் இருந்து பேக்கேஜிங்" பிளஸ் மற்றும் debhelper மற்றும் dh- செய்ய என்று பிரிவு இருந்து தேவைகளை

பேக்கேஜராக, முந்தைய பிரிவில் செய்துள்ளதைப் போல, நீங்கள் புதிதாக ஒரு தொகுப்பை உருவாக்க வேண்டும். நீங்கள் கற்பனை செய்யலாம் என, பல பணிகளை மற்றும் தகவல் விதிகள் கோப்பு, எடுத்துக்காட்டாக, தொகுப்புகள் பொதுவானது. பேக்கேஜிங் எளிதாக மற்றும் திறம்பட செய்ய, நீங்கள் பயன்படுத்தலாம் debhelper இந்த பணிகளுக்கு உதவ. டெபல்பர் பெர்ல் ஸ்கிரிப்டுகளின் தொகுப்பாகும் (முன்னுரிமைகள் dh_) என்று தொகுப்பு-கட்டிடம் செயல்முறை தானியக்க. இந்த ஸ்கிரிப்டுகளுடன், ஒரு டெபியன் தொகுப்பை உருவாக்குவது மிகவும் எளிமையானது.

இந்த எடுத்துக்காட்டில், நாம் மீண்டும் குனு வோல் தொகுப்புகளை உருவாக்கும், ஆனால் இந்த முறை நாங்கள் உபுண்டுவிற்கு எங்கள் வேலையை ஒப்பிடுவோம் ஹலோ-debhelper தொகுப்பு. மீண்டும், நீங்கள் வேலை செய்யும் ஒரு அடைவை உருவாக்கவும்:

mkdir ~ / hello-debhelper cd ~ / hello-debhelper wget http://ftp.gnu.org/gnu/hello/hello-2.1.1.tar.gz mkdir ubuntu cd உபுண்டு

பின்னர், உபுண்டு மூல தொகுப்பு கிடைக்கும்:

apt-get மூல hello-debhelper cd ..

முந்தைய எடுத்துக்காட்டைப் போலவே, முதலில் செய்ய வேண்டியது அசல் (அப்ஸ்ட்ரீம்) டார்ஃபால் திறக்கப்படாதது.

tar-xzvf hello-2.1.1.tar.gz

அப்ஸ்ட்ரீம் டார்வால்னை நகலெடுப்பதற்கு பதிலாக hello_2.1.1.orig.tar.gz நாம் முந்தைய உதாரணத்தில் செய்தது போல், நாம் விடுவோம் dh_make எங்களுக்கு வேலை செய்யுங்கள். நீங்கள் செய்ய வேண்டிய ஒரே விஷயம் மூல கோப்புறையை மறுபெயரிடுவதால் அது வடிவத்தில் உள்ளது - எங்கே packagename ஸ்மால் ஆகும். இந்த விஷயத்தில், tarball untarring ஒரு சரியாக பெயர் மூல அடைவு உற்பத்தி நாம் அதை நகர்த்த முடியும்:

சிடி ஹலோ -2.1.1

தொடக்கத்தின் "debianization" மூலத்தை உருவாக்க நாங்கள் பயன்படுத்துவோம் dh_make.

dh_make -e your.maintainer@address -f ../hello-2.1.1.tar.gz

dh_make பின்னர் உங்களுக்கு தொடர்ச்சியான கேள்விகளை கேட்கும்:

தொகுப்பு வகை: ஒற்றை பைனரி, பல பைனரி, நூலகம், கர்னல் தொகுதி அல்லது சி.டி.பி.எஸ்? கள் ​​/ மீ / L / k / ஆ ங்கள் பராமரிப்பாளர் பெயர்: கேப்டன் பேக்கேஜர் மின்னஞ்சல் முகவரி: [email protected] தேதி: தி, 6 ஏப்ரல் 2006 10:07:19 -0700 தொகுப்பு பெயர்: ஹலோ பதிப்பு: 2.1.1 உரிமம்: வெற்று வகை தொகுப்பு: ஒற்றை ஹிட் உறுதிப்படுத்த: உள்ளிடவும்

எச்சரிக்கை

ரன் மட்டுமே dh_make -e ஒருமுறை. முதல் முறையாக நீங்கள் அதை மீண்டும் இயக்கினால், அது ஒழுங்காக இயங்காது. நீங்கள் அதை மாற்றிக்கொள்ள அல்லது தவறு செய்திருந்தால், மூல கோப்பகத்தை அகற்றி, அப்ஸ்ட்ரீம் டார்ஃபர் புதியதைத் தொடரவும். நீங்கள் மூல அடைவில் இடம்பெயரலாம் மற்றும் மீண்டும் முயற்சிக்கவும்.

இயங்கும் dh_make -e இரண்டு விஷயங்கள்:

  • உருவாக்குகிறது hello_2.1.1.orig.tar.gz பெற்றோர் அடைவில் கோப்பு,
  • தேவையான அடிப்படை கோப்புகளை உருவாக்குகிறது டெபியன் / மற்றும் பல டெம்ப்ளேட் கோப்புகள் (.exex) தேவைப்படலாம்.

தி வணக்கம் நிரல் மிகவும் சிக்கலானது அல்ல, மற்றும் "ஸ்கிரேட்ச் பேக்கேஜிங்" எனப்படும் பிரிவில் நாம் கண்டிருப்பதைப் போல, இது பேக்கேஜிங் அடிப்படை கோப்புகளை விட அதிகம் தேவையில்லை. எனவே, நாம் அகற்றலாம் .ex கோப்புகளை:

cd debian rm * .ex * .EX

ஐந்து வணக்கம், நீங்கள் கூட முடியாது

* உரிமம்

* உபுண்டு பேக்கேஜிங் கையேடு அட்டவணை

தேவை README.Debian (குறிப்பிட்ட டெபியன் சிக்கல்களுக்கான README கோப்பு, நிரல் README அல்ல), dirs (பயன்படுத்தப்படுகிறது dh_installdirs தேவையான அடைவுகள் உருவாக்க), டாக்ஸ் (பயன்படுத்தப்படுகிறது dh_installdocs நிரல் ஆவணங்கள் நிறுவ) அல்லது தகவல் (பயன்படுத்தப்படுகிறது dh_installinfo தகவல் கோப்பு நிறுவ) கோப்புகளை டெபியன் அடைவு. இந்த கோப்புகளை பற்றிய மேலும் தகவலுக்கு, "dh_make எடுத்துக்காட்டாக கோப்புகள்" என்ற பிரிவைப் பார்க்கவும்.

இந்த கட்டத்தில், நீங்கள் மட்டும் இருக்க வேண்டும் சேஞ்ச், compat, கட்டுப்பாடு, பதிப்புரிமை, மற்றும் விதிகள் கோப்புகளில் டெபியன் அடைவு. "ஸ்கிரேட்ச் இருந்து பேக்கேஜிங்" என்ற பிரிவில் இருந்து, புதியதாக இருக்கும் ஒரே கோப்பு compat, இதில் ஒரு கோப்பை உள்ளது debhelper பதிப்பு (இந்த வழக்கில் 4) பயன்படுத்தப்படுகிறது.

நீங்கள் சரிசெய்ய வேண்டும் சேஞ்ச்சற்று இந்த வழக்கில் இந்த தொகுப்பு பெயரிடப்பட்டது என்று பிரதிபலிக்க ஹலோ-debhelper அதற்கு பதிலாக வணக்கம்:

ஹலோ-டெபல்பர் (2.1.1-1) துளசி; அவசரநிலை = குறைந்த * தொடக்க வெளியீடு - கேப்டன் பேக்கேஜர் தி, 6 ஏப்ரல் 2006 10:07:19 -0700

பயன்படுத்தி debhelper, நாம் மாற்ற வேண்டிய ஒரே விஷயங்கள் கட்டுப்பாடு பெயர் (பதிலீடு வணக்கம் ஐந்து ஹலோ-debhelper) மற்றும் சேர்த்து debhelper (> = 4.0.0) என்று கட்ட சார்ந்தது மூல தொகுப்புக்கான புலம். உபுண்டு தொகுப்பு ஹலோ-debhelper தோன்றுகிறது:

மூல: ஹலோ-டெபல் பிளேயர்: டிவெல் முன்னுரிமை: கூடுதல் பராமரிப்பாளர்: கேப்டன் பேக்கேஜர் வடிவமைப்பு-பதிப்பு: 3.6.1 கட்டமைப்பு-பதிப்பு: 3.6.1 கட்ட-சார்பு: debhelper (> = 4) தொகுப்பு: ஹலோ-டெபல்பர் கட்டிடக்கலை: எந்தவொரு சார்பு: $ {shlibs: சார்ந்து} மோதல்கள்: ஹலோ வழங்குகிறது: ஹலோ மாற்றுகிறது: ஹலோ விளக்கம்: கிளாசிக் வாழ்த்து நல்ல உதாரணம் குனு ஹலோ திட்டம் பிரபலமான, நட்பு வாழ்த்துக்களை உருவாக்குகிறது. இது அல்லாத நிரலாளர்கள் இல்லையெனில் அவர்களுக்கு கிடைக்காது என்று ஒரு சிறந்த கணினி அறிவியல் கருவியை பயன்படுத்த அனுமதிக்கிறது. . தீவிரமாக, எனினும்: இது ஒரு டெபியன் தொகுப்பு எப்படி செய்வது என்பது ஒரு உதாரணம். இது குனு திட்டத்தின் 'ஹலோ உலக' திட்டத்தின் டெபியன் பதிப்பு (இது குனு திட்டத்திற்காக ஒரு எடுத்துக்காட்டு). . இது ஹேலோ பேக்கேஜ் போலவே, இது டெபல் செய்ய மோசடி பயன்படுத்துகிறது. அது என்னவென்று தெரியவில்லையா பாருங்கள்.

நாம் நகலெடுக்க முடியும் பதிப்புரிமை கோப்பு மற்றும் postinst மற்றும் prerm உபுண்டுவில் இருந்து ஸ்கிரிப்ட்கள் ஹலோ-debhelper தொகுப்பு, "பிரிட்ஜ் ஃப்ரம் கீறல்" என்று அழைக்கப்படும் பிரிவில் இருந்து மாற்றப்படவில்லை. நாங்கள் நகலெடுப்போம் விதிகள் கோப்பு நாம் அதை பார்க்க முடியும்.

cp ../../unt/hello-debhelper-2.1.1/debian/copyright. cp ../../unt/hello-debhelper-2.1.1/debian/postinst. cp ../../unt/hello-debhelper-2.1.1/debian/prerm. cp ../../unt/hello-debhelper-2.1.1/debian/rules.

கடைசி கோப்பை நாம் பார்க்க வேண்டும் விதிகள், அங்கு சக்தி debhelper ஸ்கிரிப்ட்கள் காணலாம். தி debhelper பதிப்பு விதிகள் ஓரளவு சிறியது ("கோட்பாடு" என்ற பிரிவில் இருந்து பதிப்புகளில் 72 வரிகளை எதிர்க்கும் 54 வரிகள்).

தி debhelper பதிப்பு தோன்றுகிறது:

#! / usr / bin / make -f package = hello-debhelper CC = gcc CFLAGS = -g -ல் ifeq (, $ (கண்டுபிடித்து noopt, $ (DEB_BUILD_OPTIONS))) CFLAGS + = -O2 endif #export DH_VERBOSE = 1 சுத்தமாக : dh_testdir dh_clean rm -f build - $ (MAKE) -இன் டிக்ளிகன் நிறுவுதல்: dh_clean dh_installdirs $ (MAKE) prefix = $ (CURDIR) / debian / $ (தொகுப்பு) / usr mandir = $ (CURDIR) / debian / (தொகுப்பு) / usr / share / man infodir = $ (CURDIR) / debian / $ (தொகுப்பு) / usr / share / info install கட்டடம்: ./configure --prefix = / usr $ (MAKE) CC = "$ (CC) "CFLAGS =" $ (CFLAGS) "

பைனரி-இண்டெப் உருவாக்கத் தொடங்கு: நிறுவவும் # கட்டமைப்பு-சுயாதீனமான கோப்புகளை பதிவேற்றப்படும் # இந்த தொகுப்பால் உருவாக்கப்படும். ஏதேனும் இருந்திருந்தால் அவை இங்கே # ஆகிவிடும். பைனரி வளைவு: dh_testdir -a dh_testroot -a dh_installdocs -a NEWS dh_installchangelogs -a ChangeLog dh_strip -a dh_compress -a dh_fixperms -a dh_installdeb -a dh_shlibdeps -a dh_gencontrol -a dh_md5sums -a dh_builddeb -a பைனரி: பைனரி- indep பைனரி- வணக்கம். ஹனோய்: பைனரி பைனரி வளைவு பைனரி-இன்டெப் சுத்தமான செட்ரூட்

நீங்கள் சரியான கோப்பகத்தில் இருந்தால், சோதனை போன்ற பணிகளை கவனிக்கவும் (dh_testdir), நீங்கள் ரூட் சலுகைகள் கொண்ட தொகுப்புகளை உருவாக்குகிறீர்கள் என்பதை உறுதிசெய்கிறது (dh_testroot), ஆவணங்களை நிறுவுதல் (dh_installdocs மற்றும் dh_installchangelogs), மற்றும் உருவாக்க பிறகு சுத்தம் (dh_clean) தானாகவே கையாளப்படுகின்றன. பல தொகுப்புகளை விட மிகவும் சிக்கலானது வணக்கம் வேண்டும் விதிகள் ஏனெனில் பெரிய கோப்புகள் இல்லை debhelper ஸ்கிரிப்ட்கள் பெரும்பாலான பணிகளை கையாளப்படுகின்றன. முழுமையான பட்டியல் debhelper ஸ்கிரிப்ட்கள், என்ற பிரிவைப் பார்க்கவும் "பட்டியல் debhelper ஸ்கிரிப்டுகள். "அவர்கள் நன்கு ஆவணப்படுத்தப்படுகிறார்கள் ஆண் பக்கங்கள். மேலே உள்ள ஒவ்வொரு உதவியாளர் ஸ்கிரிப்ட்டிற்காக, மனிதப் பக்கத்தைப் படிக்க (அவை நன்கு எழுதப்பட்டவை மற்றும் நீளமாக இல்லை) வாசிக்க ஒரு பயனுள்ள பயிற்சியாகும் விதிகள் கோப்பு.