Geliştirme için gereken araçlar

Herhangi bir şeye başlamadan önce, geliştirmek için kullanacağınız bazı ek paketlerin düzgün biçimde yüklendiğinden emin olmalısınız. Listenin `temel' veya `gerekli' gibi herhangi bir paketi içermediğini dikkate alınız; onların zaten kurulu olduğunu varsayıyoruz.

Bu belgenin bu sürümü Debian 2.2 (`potato') ve 3.0 (`woody') dağıtımlarındaki paketlere göre güncellenmiştir.

Aşağıdaki paketler standart Debian kurulumunda gelmektedir, dolayısiyle muhtemelen sisteminizde bulunmaktadır (bağımlı oldukları diğer ek paketlerle beraber). Gene de dpkg -s paketadı ile kontrol etmelisiniz.

dpkg-dev
Bu paket Debian kaynak paketlerini açmak (unpack), derlemek (build), karşıya yüklemek (upload) için gerekli araçları içerir. (dpkg-source(1) kılavuz sayfasına bakınız.)

file
Bu kullanışlı araçla bir dosyanın türünü belirleyebilir. (file(1) kılavuz sayfasına bakınız.)

gcc
GNU C derleyicisi, eğer pek çok diğer program gibi sizinki de C dilinde yazıldıysa gerelidir. (gcc(1) kılavuz sayfasına bakınız.) Bu paket ayrıca C önişlemcisi cpp (cpp(1) kılavuz sayfasına bakınız.) ve nesne dosyalarını çevirmek ve ilintilemek için kullanılan araçları içeren binutils (binutils-doc paketi içerisindeki info binutils'e bakınız) gibi çeşitli paketlere de nüfuz eder.

g++
GNU C++ derleyicisi, eğer programınız C++ ile yazılmışsa gereklidir. (g++(1) kılavuz sayfasına bakınız.)

libc6-dev
gcc'nin nesne dosyalarını oluştururuken ilintilemesi gereken C kütüphaneleri ve başlık dosyaları. ('na bakınız.)

make
Genellikle bir programın oluşturulması birkaç adım alır, aynı komutları tekrar tekrar yazmak yerine, bu programı kullanarak `Makefile' dosyaları oluşturup işlemi otomatikleştirebilirsiniz. (info make'e bakınız.)

patch
Bu pek faydalı araç, farklılıklar listesi içeren bir dosyayı alır (diff uygulaması tarafından oluşturulmuş) ve onu orjinal dosyaya uygular, sonucunda da yamalı sürüm üretilir. (patch(1) kılavuz sayfasına bakınız.)

perl
Perl, genellikle "Unix'in İsviçre Çakısı" olarak ifade edilen, günümüz Unix-benzeri sistemlerde en çok kullanılan betik dillerinden biridir. (perl(1) kılavuz sayfasına bakınız.)

Muhtemelen aşağıdaki paketkeri de yüklemek isteyeceksiniz:

autoconf ve automake
Pek çok yeni program bu tür araçların yardımıyla önişleme tabi tutulan configure betikleri ve Makefile dosyaları kullanmaktadır. ( ekitabına bakınız.)

dh-make ve debhelper
dh-make örnek paketimizin iskeletini oluşturmak için gereklidir ve paketi oluşturuken de debhelper araçlarından bazılarını kullanacaktır. Bunlar paket oluşturmak için gerekli değildir, fakat ilk defa paket hazırlayan bakımcılar için şiddetle tavsiye edilmektedir. Başlangıçta ve sonrasında kontrol ederken bütün işlemi çok basit bir hale getirmektedir. (dh_make(1), debhelper(1) kılavuz sayfalarına ve /usr/share/doc/debhelper/README dosyasına bakınız.)

devscripts
Bu paket, paket bakımcılarına yardımı olabilecek bazı hoş ve faydalı betikler içermektedir, fakat bunlar paket oluşturmak için gerekli değildir. (/usr/share/doc/devscripts/README.gz dosyasına bakınız.)

fakeroot
Bu araç yapım derleme aşamasının bazı yerlerinde root gibi davranmanıza izin vermektedir. (fakeroot(1) kılavuz sayfasına bakınız.)

gnupg
Paketleri sayısal olarak imzalamayı sağlayan bir araçtır. Bu eğer özellikle paketinizi başkalarına dağıtmak isterseniz önemlidir ve elbette çalışmanız Debian projesine dahil olunca da bunu yapıyor olacaksınız. (gpg(1) kılavuz sayfasına bakınız.)

g77
GNU Fortran 77 derleyicisi, eğer programınız Fortran dilinde yazıldıysa gereklidir. (g77(1) kılavuz sayfasına bakınız.)

gpc
GNU Pascal derleyicisi, eğer programınız Pascal dilinde yazıldıysa gereklidir. Bu işte iyi olan ve işaret etmeye değer bir tanesi de fp-compiler, Özgür Pascal Derleyicisidir (Free Pascal Compiler). (gpc(1) ve ppc386(1) kılavuz sayfalarına bakınız.)

xutils
Genelde X11 uygulamalarını yapmak için yapılmış bazı programlar, ayrıca bu programlar bazı makro işlev kümelerinden Makefile dosyalarını üretmek için de kullanılır. (imake(1) ve xmkmf(1) kılavuz sayfalarına bakınız.)

lintian
Bu, siz Debian paketi yaptıktan sonra genel hataları bilmenizi sağlayan ve bulduğu hataları açıklayan Debian paket denetimcisidir. (lintian(1) kılavuz sayfasına ve /usr/share/doc/lintian/lintian.html/index.html dosyasına bakınız.)

pbuilder
Bu paket chroot ortamını oluşturmak ve bakımını yapmak için gerekli paketleri içerir. Debian paket derleyici, bu chroot ortamında, gerekli derleme bağımlılıklarının doğrulanmasını ve FTBFS hatalarından kaçınabilmeyi sağlar. (pbuilder(1) ve pdebuild(1) kılavuz sayfalarına bakınız.)

Aşağıdakiler bu belge ile beraber okumanız gereken çok önemli belgelerdir:

debian-policy
Politika, Debian arşivinin yapısı ve içeriğiyle, bazı işletim sistemi meseleleriyle, Dosya Hiyerarşı Standardı (Filesystem Hierarchy Standard) (hangi dosya ve dizin nerede olmalı) ile ilgili açıklamalar içerir. Sizin için en önemlisi, dağıtımda yer alması için bir pakette olması gerekenleri açıklamasıdır. (http://www.debian.org/doc/debian-policy/ veya /usr/share/doc/debian-policy/policy.html/index.html dosyasına bakınız.)

developers-reference
Paketlemenin teknik ayrıntıları dışındaki herşey; arşivin yapısı, nasıl yeniden adlandırılacağı, öksüz (orphan), toplama paketler, NMU'ların nasıl yapıldığı, hatalarla nasıl ilgilenilir, en iyi paketleme pratikleri, ne zaman ve nereye karşıya yükleme yapılmalı, v.b. gibi. (http://www.debian.org/doc/manuals/developers-reference/index.en.html veya /usr/share/doc/developers-reference/index.en-us.iso-8859-1.html dosyasına bakınız.)

Yukarıda verilen kısa açıklamalar sadece her paketin ne amaçla kullanıldığını belirtmek için vermiştir. Devam etmeden önce lütfen her programın belgelendirmesini etraflıca, en azından standart kullanımını, okuyunuz. Şu an çok zor gözükebilir, ama ilerde okuduğunuza memnun olacaksınız.

Not

debmake, dh-make benzeri işlevler yapan araçları içeren bir pakettir, fakat ona özel kullanım bu belge içinde anlatılmayacaktır, çünkü artık önerilmemektedir. Lütfen daha ayrıntılı bilgi edinmek için Debmake Kılavuzuna (http://people.debian.org/~jaldhar/make_package1.html) bakınız.)