Pembungkusan dengan Debhelper
Penting Keperluan: Keperluan dari seksyen yang disebut "Pembungkus Dari Gores" ditambah debhelper dan dh-make Sebagai pembungkus, anda jarang akan membuat pakej dari awal seperti yang telah kami lakukan di bahagian sebelumnya. Seperti yang anda bayangkan, banyak tugas dan maklumat di dalam peraturan fail, misalnya, adalah perkara biasa untuk pakej. Untuk membuat pembungkusan lebih mudah dan lebih cekap, anda boleh menggunakannya debhelper untuk membantu tugas-tugas ini. Debhelper adalah satu set skrip Perl (yang diawali dengan dh_) yang mengautomasikan proses pembungkusan pakej. Dengan skrip ini, membina pakej Debian menjadi agak mudah. Dalam contoh ini, kami akan membina semula pakej Hello Hello, tetapi kali ini kami akan membandingkan kerja kami dengan Ubuntu hello-debhelper pakej. Sekali lagi, buat direktori di mana anda akan berfungsi: Kemudian, dapatkan pakej sumber Ubuntu: Seperti contoh terdahulu, perkara pertama yang perlu kita lakukan adalah membongkar tarball asal (hulu). Daripada menyalin tarball hulu ke hello_2.1.1.orig.tar.gz seperti yang kita lakukan dalam contoh terdahulu, kita akan membiarkan dh_make buat kerja untuk kami. Satu-satunya perkara yang perlu anda lakukan ialah menamakan semula folder sumber supaya ia adalah dalam bentuk
Untuk membuat "pembubaran" permulaan sumber yang akan kami gunakan dh_make. dh_make kemudian akan bertanya kepada anda beberapa soalan: Awas Hanya berlari dh_make -e sekali. Jika anda menjalankannya semula selepas anda melakukannya buat kali pertama, ia tidak berfungsi dengan betul. Sekiranya anda ingin mengubahnya atau membuat kesalahan, keluarkan direktori sumber dan untar semula tarball hulu. Kemudian anda boleh berhijrah ke direktori sumber dan cuba lagi. Berjalan dh_make -e melakukan dua perkara: The Hello program tidak begitu rumit, dan seperti yang kita lihat di bahagian yang dipanggil "Pembungkusan Dari Gores", pembungkusan itu tidak memerlukan lebih banyak daripada fail asas. Oleh itu, mari kita keluarkan .ex fail: Untuk hello, anda juga tidak akan * Lesen * Indeks Panduan Pembungkusan Ubuntu keperluan README.Debian (Fail README untuk isu Debian tertentu, bukan program README), dirs (digunakan oleh dh_installdirs untuk membuat direktori yang diperlukan), dokumen (digunakan oleh dh_installdocs untuk memasang dokumentasi program), atau info (digunakan oleh dh_installinfo untuk memasang fail info) ke dalam debian direktori. Untuk maklumat lanjut mengenai fail ini, lihat bahagian yang dipanggil "contoh fail dh_make". Pada ketika ini, anda hanya perlu changelog, compat, kawalan, hak cipta, dan peraturan fail dalam debian direktori. Daripada bahagian yang dipanggil "Pembungkusan Dari Gores", satu-satunya fail yang baru adalah compat, yang merupakan fail yang mengandungi debhelper versi (dalam kes ini 4) yang digunakan. Anda perlu menyesuaikan changelogsedikit dalam kes ini untuk menunjukkan bahawa pakej ini dinamakan hello-debhelper bukan sahaja hello: Dengan menggunakan debhelper, satu-satunya perkara yang perlu kita ubah kawalan adalah nama (menggantikan hello untuk hello-debhelper) dan menambah debhelper (> = 4.0.0) kepada Membina-Bergantung bidang untuk pakej sumber. Pakej Ubuntu untuk hello-debhelper kelihatan seperti: Kita boleh menyalin hak cipta fail dan postinst dan prerm skrip dari Ubuntu hello-debhelper pakej, kerana ia tidak berubah sejak seksyen yang dipanggil "Pembungkusan Dari Gores". Kami juga akan menyalin peraturan fail supaya kami dapat memeriksanya. Fail terakhir yang perlu kita lihat ialah peraturan, di mana kuasa debhelper skrip boleh dilihat. The debhelper versi peraturan agak kecil (54 baris berbanding dengan 72 baris dalam versi dari seksyen yang dipanggil "peraturan"). The debhelper versi kelihatan seperti: sentuhan membina binari-indep: pasang # Tidak ada fail-bebas yang tidak boleh dibina untuk dimuat naik # yang dihasilkan oleh pakej ini. Jika ada apa-apa mereka akan # dibuat di sini. binary-arch: install 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 binary: binary-indep binary- gerbang .PHONY: binary-arch binary-indep checkroot bersih Perhatikan bahawa tugas-tugas seperti ujian jika anda berada di direktori yang betul (dh_testdir), pastikan anda membina pakej dengan keistimewaan root (dh_testroot), memasang dokumentasi (dh_installdocs dan dh_installchangelogs), dan membersihkan selepas membina (dh_clean) dikendalikan secara automatik. Banyak pakej yang lebih rumit daripada hello mempunyai peraturan fail tidak lebih besar kerana debhelper skrip mengendalikan kebanyakan tugas. Untuk senarai lengkap debhelper skrip, sila lihat bahagian yang dipanggil "Senarai debhelper skrip. "Mereka juga didokumenkan dengan baik di dalam masing-masing lelaki halaman. Ia adalah latihan berguna untuk membaca halaman lelaki (mereka ditulis dengan baik dan tidak panjang) untuk setiap skrip penolong yang digunakan di atas peraturan fail.