[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Adding runtime dependencies that aren't caught by shlibs:Depends



* Jens Reyer <jre.winesim@gmail.com>, 2016-05-19, 16:57:
First off, I'm not sure about every single dependency if it is needed at all.

Quick grep over the *.dll.so indeed shows that they use a bunch of libraries you mentioned:

$ strings /usr/lib/i386-linux-gnu/wine/*.dll.so | grep '^lib.*[.]so[.]' | sort -u | grep -v '!'
libGLU.so.1
libOSMesa.so.8
libOpenCL.so.1
libX11.so.6
libXext.so.6
libc.so.6
libfontconfig.so.1
libfreetype.so.6
libgnutls.so.30
libjpeg.so.62
liblber-2.4.so.2
liblcms2.so.2
libldap_r-2.4.so.2
libm.so.6
libncurses.so.5
libodbc.so.2
libopenal.so.1
libpcap.so.0.8
libpng16.so.16
libpthread.so.0
libresolv.so.2
libtiff.so.5
libwine.so.1
libxml2.so.2
libxslt.so.1
libz.so.1

I guess a better method of obtaining the list of used shared libraries is to grep for "SONAME_" in include/config.h (after it was created by the configure script).

Once you have the list of needed shlibs, the simplest way to compute package dependency is to create an ELF that depends on all of them, and then use dpkg-shlibdeps against it.

You can steal the idea of how to create such ELF here:
https://bitbucket.org/jwilk/python-dctypes/src/default/dctypes2elf

--
Jakub Wilk


Reply to: