GNU/Linux Sistemlere Özgü Tavsiyeler
Önceki Ek C. GNU C Kütüphanesinin Kurulması Sonraki
GNU/Linux Sistemlere Özgü Tavsiyeler
GNU libc'yi bir GNU/Linux sisteme kurucaksanız, sisteminizdeki Linux çekirdeğinin başlık dosyalarının 2.2 sürümü ya da daha yeni bir çekirdeğin başlık dosyaları olmalıdır. ia64, sh ve hppa gibi bazı mimarilerde ise bu en az 2.3.99 (sh ve hppa) ya da 2.4.0 (ia64) olmalıdır. Böyle bir çekirdeği kullanmaya ihtiyacınız yoksa, sadece glibc'nin onları bulabilmesini sağlamanız yeterlidir. Bunu yapmanın en kolay yolu /usr/src/linux-2.2.1 gibi bir dizine çekirdek kaynak kodunu yerleştirdikten sonra make config komutunu verin ve öntanımlı yapılandırmayı kabul edin, sonra da make include/linux/version.h komutunu verin. Son olarak glibc'yi --with-headers=/usr/src/linux-2.2.1/include seçeneği ile yapılandırın ve derleyin. Bu işlemi en son çıkan çekirdekle yapmaya çalışın.
Bir diğer taktik ise yukarıdaki gibi 2.2 veya üstü bir çekirdeği yine yükeyin ve aynı şekilde make config yapın. Sonra /usr/include dizinini ya silin ya da ismini değiştirin ve yeni /usr/include dizini içinde çekirdek kaynak koduna /usr/include/linux ve /usr/include/asm sembolik bağlarını yapın. Bu taktikte glibc'yi yapılandırırken özel bir seçenek kullanmanıza gerek yoktur. Eğer libc5'ten yükseltme yapıyorsanız bu taktiği kullanmalısınız, çünkü artık eski başlık dosyalarına hiç ihtiyacınız olmayacaktır.
GNU libc'yi sisteme kurduktan sonra /usr/include/linux ve /usr/include/asm dizinlerini ya silin ya da isimlerini değiştirin ve bunların içeriklerini glibc kurulumunda kullandığınız çekirdek kaynak kodundaki include/linux ve include/asm-$MİMARİ dizinlerinin içerikleri ile değiştirin. Burada MİMARİ kütüphanenin kurulduğu makinenin mimarisi (i386 veya alpha gibi) olacaktır. Glibc'yi yapılandırırken --with-headers seçeneğini kullanmadıysanız bu işlemi yapmak zorunda değilsiniz. Yalnız, burada dikkat edeceğiniz husus işlemin sembolik bağlarla değil kopyalama ile yapılacağıdır.
/usr/include/net ve /usr/include/scsi dizinlerinin içerikleri çekirdek kaynak koduna sembolik bağ olmamalıdır. Bu dosyalar için GNU libc kendi sürümlerini içerir.
GNU/Linux'ta libc'nin bazı bileşenlerinin /lib içinde bazılarının da /usr/lib içinde olması gerekir. Eğer glibc'yi --prefix=/usr ile yapılandırırsanız kurulumda bu zaten böyle olur. Eğer öntanımlı yapılandırmayı tercih ederseniz bu dosyalar /usr/local altına kurulacaktır.
Libc5'ten yükseltme yapıyorsanız, her paylaşımlı kütüphanenin yeni kütüphaneye göre yeniden derlenmesi gerekir, ancak eski çalıştırılabilirlerin kullandığı eski kütüphaneleri de tutmanız gerekir. Bu işlem biraz karmaşık ve zordur. Bu konuda daha ayrıntılı bilgiyi Glibc2 HOWTO'da bulabilirsiniz.
nscd'yi çekirdekteki evre desteği sorunlu olduğundan 2.0 çekirdeklerle kullanamayabilirsiniz. Belki, nscd bu sorunlara zor da olsa uyum sağlayabilir, ama diğer evreli yazılımlarla sorunlar çıkabilir.
Önceki Üst Ana Başlık Sonraki
Derleme için Önerilen Araçlar Başlangıç Yazılım Hatalarının Raporlanması
Bir Linux Kitaplığı Sayfası