gcc-runtime: fix LSB library checks for libstdc++.so.6

[YOCTO #795]

When we run library check of LSB on qemux86 and qemuppc, we got some failures
about 'libstdc++.so.6'.

Test environment:
Platform: Qemu-x86, Qemu-ppc
lsb image: poky-image-lsb-qemux86-test.ext3(Feb 26th, auto-build server)
Library check of LSB: 4.1.0-1

The error log:
Did not find _ZNKSt5ctypeIcE8do_widenEPKcS2_Pc (GLIBCXX_3.4) in libstdc++.so.6
Unmangled symbol name: std::ctype<char>::do_widen(char const*, char const*,
char*) const
...

 found that some weak symbols ('W') change into local ('t') during link time
and be stripped. According to compiling log, the option
"-fvisibility-inlines-hidden" is used for gcc. And this option caused some weak
symbols change into local.

see http://bugzilla.pokylinux.org/show_bug.cgi?id=795 for more information on the bug.

(From OE-Core rev: 4bb281ef5f12096d0889ba8efcc3fd3bb0ed3b3c)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Jingdong Lu <jingdong.lu@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Nitin A Kamble 2011-03-09 09:26:13 +00:00 committed by Richard Purdie
parent 4f28cd2d18
commit cbbfbfc54f
2 changed files with 4 additions and 1 deletions

View File

@ -1,5 +1,8 @@
require gcc-configure-common.inc
CXXFLAGS = "${@oe_filter_out('-fvisibility-inlines-hidden',
'${CXXFLAGS}', d)}"
EXTRA_OECONF_PATHS = " \
--with-local-prefix=${STAGING_DIR_TARGET}${prefix} \
--with-gxx-include-dir=${includedir}/c++/ \

View File

@ -1,4 +1,4 @@
PR = "r2"
PR = "r3"
require gcc-${PV}.inc
require gcc-configure-runtime.inc