2009-07-21 17 views
37

Benim sorum şu andaki bilgilerim kadar çok basit. Linux paket depolarındaki * -dev paketleri gerçekte ne içerir?

Ben uzun zamandır Linux kullanıcısıyım rağmen ancak yakın programlamada büyük ilgi almış. Ben Ubuntu depolarından birçok popüler uygulamaları -dev paketleri (örn pidgin-dev ilaveten için pidgin) sahip olduğunu görüyoruz. Benim sorum budur:

Bu paketlerde neler var? pidgin-dev'un indirilmesi, Pidgin için geliştirilmesinde nasıl yardımcı olur? Verilen uygulama için eklentileri oluşturmak için gerekli araçlar için bir bağımlılık kontrolü kadar basit mi?

ben -dev paketlerinde belgelerin önemli miktarda olacağını umuyordum, ama varsa, bunu erişmek anlamaya olamaz. Bir adam sayfası gibi bir şey düşünüyorum ama kodu düzeltmek için kullanışlıdır.

Her türlü ve tüm öneri hoş geldiniz!

cevap

25

*-dev paketleri genellikle bir kütüphanenin arayüzüne ilişkin başlıklarını içermektedir. En yaygın olanları, derleme seçeneklerini ve statik olarak bağlantılı kitaplıkları açıklayan paket-config dosyalarıdır (*.pc).

Genel olarak, yüklediğiniz bir paketin içeriğini öğrenmek isterseniz, dpkg -L pkgname bunu size ulaştıracaktır. apt-file programı, depolardaki herhangi bir paket için aynı şeyi size söyleyebilir.

Not ayrıca William Pursell Sirkecide cevapları kullanışlı ek ayrıntılar içerdiğini. Eğer onların girişini faydalı bulursanız, bunu tekrarlayın.

+0

Yüklemeden içeriği bilmek istiyorsanız, apt-get indirmeyi ve dpkg-deb -c'yi de kullanabilirsiniz. – Jeff

+0

@Jeff Bunu yapmanın daha kolay yolu, 'apt-file list packagename' ile. – Novelocrat

14

-dev paketleri genellikle C başlık dosyaları ve kitaplık dosyaları (.a uzantısı) ait statik olarak derlenmiş sürümlerini içerir. Bazen ek belgeler ve örnekler, hatta yardımcı uygulamalar içerirler.

0

Bu pakette, ana pidgin paketinde bulunmayan başlıklar ve diğer geliştirme dosyaları bulunur. Kendi eklentilerinizi derlemek isterseniz -dev'i kurun.

18

(yasal uyarı: Ben aşağıda yazılan herşey geçerli olduğu neredeyse kesin olmasına rağmen bu yüzden, Debian ancak Ubuntu aşina olduğum var öyle değil bir şanstır.) * -dev içinde

Daha fazla öğe paket/usr/lib/lib * .so bağlantısıdır. Libfoo-paketi, /usr/lib/libfoo.so.0.0 dosyasını kurarken, libfoo-dev /usr/lib/libfoo.so.0 ve /usr/lib/libfoo.so linklerini yükler. Bu, libfoo0 ve libfoo1'in aynı anda kurulmasını sağlayan mekanizmadır, böylece eski kütüphaneyi gerektiren yazılımlar, yeni kütüphaneyi kullanarak yazılım üzerinde kutu üzerinde birlikte bulunabilir. Libfoo-dev'i yüklediğinizde, derlenmiş herhangi bir yazılım * .so bağlantısını takip eder ve o link tarafından referans verilen kütüphane sürümüne karşı bağlantı kurar.

İlgili konular