This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libstdc++/28811] undefined versioned symbol name _ZNKSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv@GLIBCXX_3.4
- From: "hjl at lucon dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 22 Aug 2006 21:39:49 -0000
- Subject: [Bug libstdc++/28811] undefined versioned symbol name _ZNKSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv@GLIBCXX_3.4
- References: <bug-28811-7667@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #4 from hjl at lucon dot org 2006-08-22 21:39 -------
libstdc++ doesn't supports building PIC archive properly. The archive
shouldn't include symbol version even if it is compiled with PIC since symbol
version info is generated by linker when building a shared library.
In glibc, we use -DSHARED to indicate if a file is compiled for shared library.
We need to change ./src/compatibility.cc from
#if defined(_GLIBCXX_SYMVER_GNU) && defined(PIC)
to
#if defined(_GLIBCXX_SYMVER_GNU) && defined(SHARED)
and define -DSHARED when compiling for shared library.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28811