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

Bug#389555: g++-4.1: Adds un-needed libraries during link

Package: g++-4.1
Version: 4.1.1-13
Severity: minor


Apropos the recent posting by Christian Aichinger and his checklib
scripts with output at http://rerun.lefant.net/checklib.

Some of these problems (at least in the case of swish++) are caused
by the fact that when "g++" is used in the link phase of the
compilation it adds "-lm -lgcc_s" and so on to the call to

This means that libraries whose symbols are not to be found in the
binary are still listed as NEEDED in it. This creates additional
dependecies etc.

This appears to be a known and "wontfix" problem with g++. See for
example this thread:


For now the only solution seems to be to *not* use "g++" to perform
the linking and instead use "gcc" with the additional "-lstdc++"
command line argument. The "-Wl,--as-needed" switch may also work.



-- System Information:
Debian Release: testing/unstable
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.17-2-vserver-686
Locale: LANG=en_IN.UTF-8, LC_CTYPE=en_IN.UTF-8 (charmap=UTF-8)

Versions of packages g++-4.1 depends on:
ii  gcc-4.1                      4.1.1-13    The GNU C compiler
ii  gcc-4.1-base                 4.1.1-13    The GNU Compiler Collection (base 
ii  libc6                        2.3.6.ds1-4 GNU C Library: Shared libraries
ii  libstdc++6-4.1-dev           4.1.1-13    The GNU Standard C++ Library v3 (d

g++-4.1 recommends no packages.

-- no debconf information

Attachment: signature.asc
Description: Digital signature

Reply to: