2012-04-01 23 views
12

Birkaç dosya yüklemek için küçük bir deb paketi oluşturuyorum. Bunlardan bazıları/usr/lib/mypackage/dizininde bulunacak ve/usr/lib/mypackage/mybin to/usr/bin/mybindebian rules dosyası bir sembolik bağ oluştur

/usr/lib/mypackage klasöründen bir link oluşturmak istiyorum Ben mypackage.install kullanıyorum ve orada dosyaları kopyalayın. Bu iyi çalışıyor gibi görünüyor.

Ancak, benim sembolik bağlantı oluşturmak için orada debian kuralları dosyasını kullanmam gerektiğini anlıyorum ve nasıl devam edeceğimi bilmiyorum, ekleyeceğim satır, nerede eklenmeli ve Nasıl? Teşekkür

ln -s /usr/lib/mypackage/mybin /usr/bin/mybin 

cevap

20

iyi yolu dh_link, debhelper paketinin parçası olan kullanmaktır. Çalışması hakkında bilgi için man dh_link'a bakın. Eğer muhtemelen bir dosyada aşağıdaki debian/$mypackage.links denilen gibi bir şey istiyorum, o da görebileceğiniz gibi: Zaten orada değilse sen, senin debian/rules içinde dh_link koymalıyız

/usr/lib/mypackage/mybin /usr/bin/mybin 

, nasıl yapıyoruz bağlıdır Paketin. Eğer Debhelper kullanıyorsanız, debian/rules'nuz muhtemelen dh_link 'un dikkatini çekmiş durumdadır (klasik Debhelper kullanıyorsanız bile, dh_link hattı yorumlanabilir ve bunu uncomment etmeniz gerekir). Daha yeni olan Debhelper (dh) veya CDBS-plus-debhelper (include /usr/share/cdbs/1/rules/debhelper.mk) kullanarak burada da sayın; onlar sizin için dh_link ile ilgilenecekler.

Ancak Debhelper kullanmıyorsanız ve başlamak istemiyorsanız, muhtemelen dh_link bir seçenek değildir. Bu durumda, sadece Debian Policy on the subject'a uygun olduğunuzdan emin olmalısınız (sembolik bağınızın göreceli olması, mutlak olmaması gerekir). Bağlantıyı debian/rulesbuild hedefinizde yapmak isteyebilirsiniz. Örnek:

build: 
    # ... other stuff ... 
    mkdir -p debian/$mypackage/usr/bin 
    ln -s ../lib/mypackage/mybin debian/$mypackage/usr/bin/mybin 
+0

Sembolik bağ göreli sorunumu – user877329

+0

çözüldü yapma yerine '* .links' dosyasını sağlamak, ayrıca rules'' manuel kontrol yapılandırması ekleyebilirsiniz. 'Override_dh_link' yerine yerleştirin: \ n \ t dh_link kaynak/dosya hedefi/dosya '%:' yapılandırma bloğunun sonundan sonra. '\ n \ t' bir sekmenin ardından yeni bir satır anlamına gelir. – iFreilicht

İlgili konular