Perşembe, Temmuz 09, 2009

LINUX -2 : MAKE AND INSTALL FROM SOURCE CODE

“Linux dağıtımlarının paket arşivleri her ne kadar geniş olsa da özgür yazılımın avantajlarından birisi de programları kaynak kodundan derleyerek kullanmaktır. Kendi linux dağıtımınız için bulamadığınız bir programı kaynak kodundan derleyerek kullanabilirsiniz. ”

Linux dağıtımlarının etkili kullanılmasında kaynak kodundan derleme işlemi çok önem arzeder. Bir programın derlenmiş ve kaynak kodu dağıtımınız için bulunabilir fakat dağıtım için derlenmiş bir paket yoksa o zaman make install yapmak için kolları sıvamanız gerekir.

Tarbal nedir?

Programcılar program dosyalarını hiyerarşik yapıda tutabilmek ve dağıtmak için tarbal şeklinde bir paketleme kullanırlar. Tarbal bir arşivdir ama sıkıştırma işlemi yapmaz. Tarbal şeklinde paketlenen bir yazılım kodu yazilim.adi.tar şeklinde tek dosya haline gelecektir. İstersek bzip ya da gzip algoritmalarını kullanarak bu dosyayı sıkıştırabiliriz. Gzip ile sıkıştırılmış bir tarbal tar.gz yada tgz uzantısını bzip il sıkıştırılmış tarbal ise tar.bz2 uzantılarını alacaktır.(bzip daha fazla sıkıştırma sağlar.)

Kaynak koddan program derlemek istediğimizde internetten indirdiğimiz paketlerin tar ya da tar.gz şeklinde dağıtılacağınız tahmin edebiliriz. Programı derlemek için önce arşivi çıkarmalıyız .

Tarbal açmak

İki adımda gerçekleşir.

$ gzip -d tarbar.tar.gz (-d modu decompress mode olduğunu belirtir.)

$ tar xvf tarbal.tar

Tek adımda gzip çıktısını tar a pipe(boru) yardımıyla aktarabiliriz .

$ gzip -dc tarbal.tar.gz | tar xv

Ayrıca eski tar ın aksine GNU tar tek adımda bu işi yapabilmektedir.

$ tar zxvf tarbal.tar.gz

bzip2 ile sıkıştırılmış dosyalar için de aynı şekilde

$ bzip2 -dc tarbal.tar.bz2 | tar xv

GNU tar ile tek adımda

$ tar jxvf tarbal.tar.bz2 olarak gerçeklenir.

(Açık) Kaynak Kodundan Derlemek ve Kurmak

“kaynak kodu derleyebildiğinize göre açıktır:)”

Kaynak kodu derleme işlemi en fazla 3 adımda gerçekleşir.

  1. Configure: Çoğu kaynak kod en üst dizinde bir configure dosyası içinde configure script I bulundurur. Bu script programcılar tarafından autoconf aracı kullanarak gerçekleştirilir.

    $ ./configure ile sistemimizde paylaşılan kütüphaneler ve araçlar test edilir.

  2. Make : make yazılım derleme aşamasını kontrol eden bir araçtır. Yazılım birçok dosyadan oluştuğunda her build işlemi için bu dosyaların compile edilmesi gerekmez. Make makefile dosyasında geçen sistem dizinlerine göre ve bağımlılıklara göre çalışır. Örnek olarak çoğu yazılımın çalıştırılabilir dosyası /usr/local/bin dizinine atılır.

  3. Son işlem ise dosyaların sistem dizinlerine atılmasıdır ki bu işlem için root erişim haklarının alınması gerekir.

    # make install komutu ile sistemimize dosyalar kopyalanır. Genellikle yazılımın executable dosyası /usr/local/bin içindedir.




Bu işlemler sonucunda yazılımı derleyip kurmuş olduk. Gelecek yazımızda en yaygın iki dağıtım olan debian (.deb) ve red hat (.rpm) linux dağıtımlarının paket yönetimine bakacağız. Kolay gelsin.

Bu yazı için LPIC ağırlığı: 5/8




0 yorum:

Yorum Gönder