[Gelistirici] dependency.py

ertan ert976 at gmail.com
21 Şub 2009 Cmt 13:41:08 EET


Murat çok gerekli bir uygulama emeğin için teşekkürler. Filezilla paketinde ve 
lives paketinde denedim. 

Filezilla bağımlılıkları sadece wxGTK ve gnutls olması lazım.(system.base ve 
system.devel hariç) Bazı paketleri fazladan çıkarıyor. (Depin depi)

Lives paketinde bin için deki tüm dosyalara baktığı için problem oluyor. Bazı 
dosyaları okuyamıyor. Bu yüzden hata veriyor. Sadece bin/lives a baksa daha 
mı doğru olur.

Ayrıca ek te daha önce internet te ararken bulduğum. Bağımlılıkları grafik 
olarak çıkartan uygulama mevcut. Dosya içinde ayarı MAXDEPTH=2 olarak 
çıkarınca daha sade sonuç veriyor. Programın eksi si  system.base ve 
system.devel ayrımı yapmadan çıkarıyor. Ayıklama yapmak gerekiyor. Pisi 
olarak çıkarması için revizyon lazım. Uygulama kullanımı :
(./dependencies.sh /usr/bin/filezilla filezilla.jpeg)

Çıktılar : 

ert76 at ert976 ~ $ ./dependency.py /var/pisi/filezilla-3.2.2-16/install
gnutls
wxGTK
atk
pango
DirectFB
aalib
libcaca
glitz
xcb-util
ert76 at ert976 ~ $

*****************************************
ert976 bin # ldd -u filezilla
Unused direct dependencies:

        /usr/lib/libgnutls.so.26
        /usr/lib/libdbus-1.so.3
        /usr/lib/libwx_baseu_net-2.8.so.0
        /usr/lib/libidn.so.11
        /lib/libm.so.6
        /usr/lib/libgcc_s.so.1
        /lib/libpthread.so.0

ert976 bin # objdump -p filezilla
...
Dynamic Section:
  NEEDED               libgnutls.so.26
  NEEDED               libdbus-1.so.3
  NEEDED               libwx_gtk2u_aui-2.8.so.0
  NEEDED               libwx_gtk2u_xrc-2.8.so.0
  NEEDED               libwx_gtk2u_adv-2.8.so.0
  NEEDED               libwx_gtk2u_core-2.8.so.0
  NEEDED               libwx_baseu_net-2.8.so.0
  NEEDED               libwx_baseu-2.8.so.0
  NEEDED               libidn.so.11
  NEEDED               libstdc++.so.6
  NEEDED               libm.so.6
  NEEDED               libgcc_s.so.1
  NEEDED               libpthread.so.0
  NEEDED               libc.so.6
.....

ert76 at ert976 ~ $ ./dependency.py /var/pisi/lives-0.9.9.6-10/install
lddlibc4: başlık `/var/pisi/lives-0.9.9.6-10/install/usr/bin/midistop'den 
okunamıyor: Böyle bir dosya ya da dizin yok
Traceback (most recent call last):
  File "./dependency.py", line 92, in <module>
    FindDependency()
  File "./dependency.py", line 29, in __init__
    self.main()
  File "./dependency.py", line 80, in main
    for lib in self.ldd():
  File "./dependency.py", line 48, in ldd
    link = l.split(' ')[-2]
IndexError: list index out of range
ert76 at ert976 ~ $                                  

ert76 at ert976 bin $ cat midistop
#!/bin/sh
echo � > /dev/midi
ert76 at ert976 ~ $ 

Not :

pisi conf ta ldflags = -Wl,-O1 -Wl,-z,relro -Wl,--hash-style=gnu,--as-needed
kullanıyorum. 

Saygılarımla
Ertan Argüden
-------------- sonraki bölüm --------------
A non-text attachment was scrubbed...
Name: dependencies.sh
Type: application/x-shellscript
Size: 3331 bytes
Desc: kullanılamıyor
URL: <http://liste.pardus.org.tr/gelistirici/attachments/20090221/6afec061/attachment-0002.bin>


Gelistirici mesaj listesiyle ilgili daha fazla bilgi