On Wed, Aug 03, 2005 at 09:53:29PM +0200, Markus Kolb wrote: > Package: libcgicc > Version: 3.2.3-2.1 > Severity: grave > Justification: renders package unusable
> This is a C++ package which needs a rebuild.
> g++ -I/usr/include -g -O2 -L/usr/lib -lcgicc -o dnd main.o
> /usr/lib/libcgicc.so: undefined reference to
> `std::__default_alloc_template<true, 0>::allocate(unsigned int)'
> /usr/lib/libcgicc.so: undefined reference to `std::basic_string<char,
> std::char_traits<char>, std::allocator<char> >::_S_empty_rep_storage'
> /usr/lib/libcgicc.so: undefined reference to
> `std::__default_alloc_template<true, 0>::deallocate(void*, unsigned
> int)'
> collect2: ld returned 1 exit status
This points to a more serious bug in the package:
$ ldd -d -r /usr/lib/libcgicc.so.1
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x4003d000)
libc.so.6 => /lib/tls/libc.so.6 (0x40048000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
undefined symbol: __cxa_pure_virtual (/usr/lib/libcgicc.so.1)
undefined symbol: _ZTVN10__cxxabiv117__class_type_infoE (/usr/lib/libcgicc.so.1)
undefined symbol: __gxx_personality_v0 (/usr/lib/libcgicc.so.1)
undefined symbol: _ZTVN10__cxxabiv120__si_class_type_infoE
(/usr/lib/libcgicc.so.1)
undefined symbol: _ZTTSt14basic_ifstreamIcSt11char_traitsIcEE
(/usr/lib/libcgicc.so.1)
undefined symbol: _ZTVSt13basic_filebufIcSt11char_traitsIcEE
(/usr/lib/libcgicc.so.1)
undefined symbol: _ZNSs4_Rep11_S_terminalE (/usr/lib/libcgicc.so.1)
undefined symbol: _ZTVSt14basic_ifstreamIcSt11char_traitsIcEE
(/usr/lib/libcgicc.so.1)
undefined symbol: _ZTTSt14basic_ofstreamIcSt11char_traitsIcEE
(/usr/lib/libcgicc.so.1)
undefined symbol: _ZNSt13runtime_errorD1Ev (/usr/lib/libcgicc.so.1)
<snip>
This is a violation of section 10.2 of Debian policy, and results in
libcgicc not depending on a library (libstdc++) that it needs for operation.
Even though libstdc++ is a base package, this breaks with partial upgrades
across C++ ABI transitions -- like those between each of woody->sarge and
sarge->etch. Please fix the build rules for this library so that it's
linked to libstdc++. (This probably only requires using g++ at the linking
stage; which may in turn point to an out-of-date libtool if your package
uses libtool.)
--
Steve Langasek
postmodern programmer
signature.asc
Description: Digital signature

