Ubuntu ကိုထုပ်ပိုးလမ်းညွှန်

မှတ်တမ်း

Debhelper နှင့်အတူထုပ်ပိုး


[အရေးကြီး]

လိုအပ်ချက်များ: က "Scratch မှစ. ထုပ်ပိုး" ဟုခေါ်အပိုင်းပေါင်း debhelper နှင့် DH-လုပ်ရာမှအဆိုပါလိုအပ်ချက်များကို

ကျနော်တို့ယခင်အပိုင်း၌ပြစ်မှားမိပါပွီအဖြစ်အထုပ်အဖြစ်, သင်ခဲခြစ်ရာကနေ packages များဖန်တီးပါလိမ့်မယ်။ သငျသညျစိတ်ကူးနိုင်သကဲ့သို့, စည်းမျဉ်းစည်းကမ်းတွေကိုဖိုင်ထဲမှာတာဝန်များကိုနှင့်သတင်းအချက်အလက်များစွာကိုဥပမာ, packages များမှဘုံဖြစ်ကြသည်။ ပိုမိုလွယ်ကူပြီးပိုထိရောက်ထုတ်ပိုးဖြစ်စေခြင်းငှါ, သင်တို့သည်ဤတာဝန်များကိုနှင့်အတူကူညီပေးဖို့ debhelper ကိုသုံးနိုင်သည်။ Debhelper အထုပ်-အဆောက်အဦး၏ဖြစ်စဉ်ကိုအလိုအလျောက်ကြောင်းတွင် Perl scripts (dh_ နှင့်အတူ prefixed) အစုတခုဖြစ်ပါတယ်။ ဤအ script များနှင့်အတူတစ် Debian package ကိုတည်ဆောက်ခြင်းအတော်လေးရိုးရှင်းတဲ့ဖြစ်လာသည်။

ဒီဥပမာမှာကျနော်တို့ထပ်ကို GNU မင်္ဂလာပါအထုပ်တည်ဆောက်ကြမည်, ဒါပေမယ့်ဒီအချိန်ကျနော်တို့က Ubuntu ကိုဟဲလို-debhelper အထုပ်ဖို့ကျွန်တော်တို့ရဲ့အလုပ်ကိုနှိုင်းယှဉ်ပါလိမ့်မည်။ တနည်းကား, သငျသညျအလုပ်မလုပ်ပါလိမ့်မည်ဘယ်မှာ directory ကိုဖန်တီး:

mkdir ~ / ဟဲလို-debhelper cd ~ / ဟဲလို-debhelper wget သည် http://ftp.gnu.org/gnu/hello/hello-2.1.1.tar.gz mkdir Ubuntu CD ubuntu

ထို့နောက် Ubuntu ကို source ကိုအထုပ်မရ:

အရင်းအမြစ်ဟဲလို-debhelper cd apt-get ..

ယခင်ဥပမာကဲ့သို့ပင်ကျနော်တို့လုပ်ဖို့လိုအပ်ပါတယ်ပထမဦးဆုံးအရာသည်မူလ (အထက်) tarball အထုပ်ဖြစ်ပါတယ်။

ဟဲလို-2.1.1.tar.gz -xzvf ကတ္တရာစေး

အဲဒီအစားကျွန်တော်တို့ဟာယခင်ဥပမာထဲမှာပြုသကဲ့သို့ hello_2.1.1.orig.tar.gz ဖို့အထက် tarball ကူးယူ၏, ငါတို့ dh_make ကျွန်တော်တို့ကိုအလုပ်ပြုစေပါလိမ့်မယ်။ packagename စာလုံးအသေးသည်အဘယ်မှာရှိ <ဗားရှင်း> - သင်ပြုရန်ရှိသည်တစ်ခုတည်းသောအရာက ၏ပုံစံအတွက်ဖြစ်ပါတယ်ဒီတော့အရင်းအမြစ်ဖိုင်တွဲကိုအမည်ပြောင်းသည်။ ကျွန်တော်သို့ရွှေ့နိုင်အောင်ဤကိစ္စတွင်ခုနှစ်, ရုံ tarball untarring တစ်မှန်ကန်စွာအမည်ရှိအရင်းအမြစ် directory ကိုထုတ်လုပ်:

cd ဟဲလို-2.1.1

အရင်းအမြစ်များ၏ကနဦး "Debian" ကိုဖန်တီးရန်ကျွန်ုပ်တို့ dh_make ကိုသုံးပါလိမ့်မယ်။

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

dh_make ပြီးနောက်သင်မေးခွန်းတွေဆက်တိုက်မေးပါလိမ့်မယ်:

အထုပ်အမျိုးအစား: တစ်ခုတည်း binary, မျိုးစုံ binary, စာကြည့်တိုက်, kernel ကို module သို့မဟုတ် cdbs? [s / m / ဌ / ဋ / b] s ကို
ပြုပြင်ထိန်းသိမ်းအမည်: ဗိုလ်ကြီးအထုပ်အီးမေးလ်-လိပ်စာ: packager@coolness.com နေ့စွဲ: Thu, 6 ဧပြီ 2006 10:07:19 -0700 ပက်ကေ့အမည်: ဟဲလိုဗားရှင်း: 2.1.1 လိုင်စင်: Package ကို၏အလွတ်အမျိုးအစား: လူပျိုပြီးရင်တော့ <ဝင်> ရန် အတည်ပြု: Enter


[သတိ]

တစ်ခါသာ dh_make -e ကို run ။ သင်ကပထမဦးဆုံးအကြိမ်ပြုပါအပြီးသင်ပြန် run ပါကစနစ်တကျအလုပ်လုပ်မည်မဟုတ်ပေ။ သင်ကပြောင်းလဲပစ်ချင်သို့မဟုတ်တစ်အမှားလုပ်လျှင်, အရင်းအမြစ် directory ကိုဖယ်ရှား afresh ညာပိုင်း tarball untar ။ ထိုအခါသင်သည်အရင်းအမြစ် directory ကိုသို့ပြောင်းရွှေ့နိုင်ပါတယ်ထပ်ကြိုးစားပါ။

dh_make -e running အရာနှစ်ခုမ:

အဆိုပါမင်္ဂလာပါအစီအစဉ်ကိုအလွန်ရှုပ်ထွေးမဟုတ်, ငါတို့သည်ကြောင့်အခြေခံဖိုင်တွေထက်အများကြီးပိုမလိုအပ်ပါဘူးထုတ်ပိုး "Scratch မှစ. ထုပ်ပိုး" ဟုခေါ်သည့်အပိုင်းများတွင်မြင်ကြပြီအဖြစ်။ ထိုကွောငျ့, ကို .ex ဖိုင်များကိုဖယ်ရှားပစ်ကြကုန်အံ့:

cd debian rm * .ex * .EX

မင်္ဂလာပါ, သင်သည်လည်းလိမ့်မည်မဟုတ်

* လိုင်စင်

* Ubuntu ကိုထုပ်ပိုးလမ်းညွှန်အညွှန်း

README.Debian (တိကျတဲ့ Debian ကိစ္စများများအတွက် README ဖိုင်မဟုတ်ဘဲ program ကိုဖွင့် README), (လိုအပ် directory များကိုဖန်တီးရန် dh_installdirs အသုံးပြုသော) dirs, (program ကိုစာရွက်စာတမ်းများကို install လုပ်ဖို့ dh_installdocs အသုံးပြုသော) ဒေါ့စ်, သို့မဟုတ်အချက်အလက် (ထိုအချက်အလက်ကို install လုပ်ဖို့ dh_installinfo အသုံးပြုသောလိုအပ်ပါတယ် ဖိုင်) က debian Directory ထဲသို့ဖိုင်များကို။ ဤဖိုင်များကိုအပေါ်ပိုမိုသိရှိလိုပါက "ဥပမာဖိုင်တွေ dh_make" ဟုခေါ်သည့်အပိုင်းကိုကြည့်ပါ။

ဤအချက်မှာ, သင်သာအပြောင်းအလဲ, သဟဇာတ, ထိန်းချုပ်မှု, မူပိုင်ခွင့်ရှိသင့်သဖြင့်, debian directory ထဲတွင်ဖိုင်များကိုအုပ်စိုး။ "Scratch ကနေထုပ်ပိုး" ဟုခေါ်သည့်အပိုင်းကနေအသစ်ကြောင်းတည်းသော file ကိုအသုံးပြုခဲ့ကြောင်း (ဒီကိစ္စတွင် 4) ကို debhelper ဗားရှင်းပါဝင်သောဖိုင်တစ်ဖိုင်သော compatible ဖြစ်ပါတယ်။

သင်ဤအထုပ်ဟဲလို-debhelper ထက်ရုံဟဲလိုအမည်ရှိကြောင်းထင်ဟပ်ရန်ဤအမှု၌အနည်းငယ်အပြောင်းအလဲမှတ်တမ်းထိန်းညှိဖို့လိုအပ်ပါလိမ့်မယ်:

ဟဲလို-debhelper (2.1.1-1) dapper; အရေးတကြီး = နိမ့် * ကနဦးလွတ်မြောက်ရေးအတွက် - ဗိုလ်ကြီးအထုပ် Thu, 6 ဧပြီ 2006 10:07:19 -0700

debhelper အသုံးပြုခြင်းအားဖြင့်ကျနော်တို့ထိန်းချုပ်ပြောင်းလဲပစ်ရန်လိုအပ်သည့်တစ်ခုတည်းသောအရာတို့သည်နာမတော်ကိုအမှီ ပြု. (ဟဲလို-debhelper များအတွက်ဟဲလိုအစား) နှင့်အရင်းအမြစ်အထုပ်များအတွက် Build-မူတည်လယ် debhelper (> = 4.0.0) ဖြည့်စွက်ဖြစ်ကြသည်။ ဟဲလို-debhelper များအတွက် Ubuntu ကိုအထုပ်တူ:

သူတို့သညျ "Scratch မှစ. ထုပ်ပိုး" ဟုခေါ်သည့်အပိုင်းကတည်းကပြောင်းလဲသွားတယ်ကြပြီမဟုတ်သကဲ့သို့ငါတို့သည်ထို Ubuntu ကိုဟဲလို-debhelper အထုပ်အနေဖြင့်မူပိုင်ခွင့်ဖိုင်နှင့် postinst နှင့် prerm script များကူးယူနိုင်ပါတယ်။ ငါတို့သည်လည်းစည်းမျဉ်းစည်းကမ်းတွေကိုဒါကြောင့်ကျနော်တို့ကစစ်ဆေးခြင်းနိုင်ပါတယ် file ကို copy ကူးပါလိမ့်မယ်။

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

ကျနော်တို့ကိုကြည့်ဖို့လိုတယ်နောက်ဆုံးဖိုင် debhelper script များ၏တန်ခိုးကိုတွေ့မြင်နိုင်ပါသည်ရှိရာစည်းမျဉ်းစည်းကမ်းတွေဖြစ်ပါတယ်။ စည်းမျဉ်းစည်းကမ်းတွေကို၏ debhelper ဗားရှင်း ( "စည်းမျဉ်းစည်းကမ်းတွေကို" ဟုခေါ်သည့်အပိုင်းကနေဗားရှင်း 72 လိုင်းများမှဆန့်ကျင် 54 လိုင်းများကဲ့သို့) အတန်ငယ်သေးငယ်သည်။

အဆိုပါ debhelper ဗားရှင်းတူ:

#! / usr / bin / -f အထုပ်အောင် = ဟဲလို-debhelper CC ကို = gcc CFLAGS = -g -Wall ifeq ($ (findstring noopt, $ (DEB_BUILD_OPTIONS))) CFLAGS + = -O2 endif #export DH_VERBOSE = 1 သန့်ရှင်းတဲ့ : dh_testdir dh_clean rm -f တည်ဆောက် - $ (Make) -i distclean install: $ (စေ) ရှေ့ဆက် = $ (CURDIR) / debian / $ (အထုပ်) / usr \ mandir = $ (CURDIR) / debian / $ dh_clean dh_installdirs တည်ဆောက် (အထုပ်) / usr / share / လူကို \ infodir = $ (CURDIR) / debian / $ (အထုပ်) / usr / share / အင်ဖို \ တည်ဆောက် install: ./configure --prefix = / usr $ (Make) CC ကို = "$ (CC ကို) "CFLAGS =" $ (CFLAGS) "

ထိတွေ့ binary-indep တည်ဆောက်: ဤအထုပ်တို့ကနေထုတ်လုပ်လိုက်တဲ့ # အပ်လုဒ်လုပ်ထားခံရဖို့အဘယ်သူမျှမဗိသုကာ-လွတ်လပ်သောဖိုင်တွေရှိပါတယ် # install လုပ်ပါ။ တစုံတယောက်ရှိသည်ဆိုပါကသူတို့ # ဒီနေရာမှာလုပ်မည်ဖြစ်သည်။ ဒွိ-arch: install dh_testdir -a dh_testroot -a dh_installdocs -a သတင်း dh_installchangelogs ChangeLog -a dh_strip -a dh_compress -a dh_fixperms -a dh_installdeb -a dh_shlibdeps -a dh_gencontrol -a dh_md5sums -a dh_builddeb -a binary: ဒွိ-indep binary- မဟာ .PHONY: ဒွိဒွိ-မဟာ binary-indep စင်ကြယ်သော checkroot

သငျသညျ, အမြစ်အခွင့်ထူး (dh_testroot) နဲ့အထုပ်ကိုတည်ဆောက်ခြင်းစာရွက်စာတမ်းများ (dh_installdocs နှင့် dh_installchangelogs) ကို install, နှင့်တည်ဆောက်ပြီးနောက် (dh_clean) အထိသန့်ရှင်းရေးသေချာသည်အလိုအလျောက်ကိုင်တွယ်နေကြသည်အောင်, စမ်းသပ်ခြင်းများကဲ့သို့တာဝန်များကိုသင်သည်လက်ျာ directory ကို (dh_testdir) ၌ရှိကြ၏လျှင်သတိထားမိ ။ အဆိုပါ debhelper အတွက် script အလုပ်များကိုအများဆုံးကိုင်တွယ်ဘာလို့လဲဆိုတော့အတော်များများ packages များအများကြီးပိုရှုပ်ထွေးဟဲလိုစည်းမျဉ်းစည်းကမ်းတွေရှိထက်မပိုကြီးဖိုင်များကို။ debhelper script များတစ်ဦးပြီးပြည့်စုံသောစာရင်းအဘို့, "debhelper script များစာရင်း" ဟုခေါ်သည့်အပိုင်းကိုကြည့်ပါ။ သူတို့ကအစကောင်းစွာသူတို့ရဲ့သက်ဆိုင်ရာလူကိုစာမျက်နှာများတွင်မှတ်တမ်းတင်ထားပါသည်။ ဒါဟာအထက်စည်းမျဉ်းစည်းကမ်းတွေကိုဖိုင်များတွင်အသုံးပြုတစ်ခုချင်းစီကိုအထောက်အမ script ကိုများအတွက် (သူတို့ကောင်းစွာတိကျမ်းစာ၌လာသည်နှင့်မရှည်ကြသည်) လူကိုစာမျက်နှာကိုဖတ်ရှုဖို့အသုံးဝင်လေ့ကျင့်ခန်းဖြစ်ပါတယ်။