Package: libpion-net-dev Version: internal dependancies exposed via pkg-config Severity: important
libpion-net-dev exposes all of the internal dependancies of the pion-net library through its pkgconfig file, this is a case of overlinking. See *.private in man pkg-config. pkg-config --libs pion-net -Wl,-z,defs -pthread -Wl,-E -lpthread -ldl -licui18n -licuuc -licudata -lboost_thread-mt -lboost_system-mt -lboost_filesystem-mt -lboost_regex-mt -lboost_date_time-mt -lboost_signals-mt -lboost_iostreams-mt -lssl -lcrypto -lz -lbz2 -llog4cpp -lpion-common -lpion-net As can be seen in the system information below, the dependancies of libpion-net-dev are insufficient to satisfy the linker flags presented by pkg-config. Here is an example failed build from pbuilder of a project which links against pion-net: CXXLD ipp_sdicapture /usr/bin/ld: cannot find -licui18n /usr/bin/ld: cannot find -licuuc /usr/bin/ld: cannot find -licudata /usr/bin/ld: cannot find -lboost_system-mt /usr/bin/ld: cannot find -lboost_filesystem-mt /usr/bin/ld: cannot find -lboost_regex-mt /usr/bin/ld: cannot find -lboost_signals-mt /usr/bin/ld: cannot find -lboost_iostreams-mt /usr/bin/ld: cannot find -lbz2 collect2: ld returned 1 exit status The dependancies shown in the system information below do not install the those libraries, some are simply missing icui18n, icuuc, icudata, bz2 others look wrong: dpkg -L libboost-system1.46.1 /. /usr /usr/lib /usr/lib/libboost_system.so.1.46.1 /usr/share /usr/share/doc /usr/share/doc/libboost-system1.46.1 /usr/share/doc/libboost-system1.46.1/NEWS.Debian.gz /usr/share/doc/libboost-system1.46.1/copyright /usr/share/doc/libboost-system1.46.1/README.Debian.gz /usr/share/doc/libboost-system1.46.1/changelog.Debian.gz /usr/share/lintian /usr/share/lintian/overrides /usr/share/lintian/overrides/libboost-system1.46.1 libboost_system1.46.1 does not contain the actual shared library, or depend on a package that does. Therefore in a pbuilder environment, the boost shared libs do not get installed, and the build fails as shown above. I think there are two problems: 1) Too much information about internal libraries is leaked through the pkg-config file 2) The libpion-net-dev dependencies are incompatible with the information in the pkg-config file. The leaked internal libraries are not installed, so linkage fails for builds of packages that use pion-net in clean environments such as pbuilder. -- System Information: Debian Release: 6.0.5 APT prefers stable APT policy: (700, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 2.6.32-5-amd64 (SMP w/4 CPU cores) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages libpion-net-dev depends on: pn libboost-date-time1.42 <none> (no description available) pn libboost-filesystem1.4 <none> (no description available) ii libboost-iostreams1.42 1.42.0-4 Boost.Iostreams Library pn libboost-regex1.42.0 <none> (no description available) pn libboost-signals1.42.0 <none> (no description available) pn libboost-system1.42.0 <none> (no description available) pn libboost-thread1.42.0 <none> (no description available) ii libbz2-1.0 1.0.5-6+squeeze1 high-quality block-sorting file co ii libc6 2.11.3-3 Embedded GNU C Library: Shared lib ii libgcc1 1:4.4.5-8 GCC support library pn libpion-common-3.0 <none> (no description available) pn libpion-common-dev <none> (no description available) pn libpion-net-3.0 <none> (no description available) ii libssl0.9.8 0.9.8o-4squeeze12 SSL shared libraries ii libstdc++6 4.4.5-8 The GNU Standard C++ Library v3 ii zlib1g 1:1.2.3.4.dfsg-3 compression library - runtime libpion-net-dev recommends no packages. Versions of packages libpion-net-dev suggests: pn libpion-net-doc <none> (no description available) -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org