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

Reply via email to