Re: How to enable GLIBCXX & CXXABI in yocto

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

 



On Wed, 27 Apr 2022 at 07:30, WENG Binyang <binyang.weng@xxxxxxxxxx> wrote:
>
> Hi gcc-help team,
>
> I am working on create a arm toolchain by yocto.
> I confirmed the generated toolchain, but found no GLIBCXX_3.* and CXXABI in libstdc++ for arm64. Please refer to the following.
>
> xxx:~/Workspace/EMIRROR/sdk/linux/yocto-build/toolchain/sysroots/aarch64-linux/usr/lib$ strings libstdc++.so.6.0.28 | grep GLIBCXX
> GLIBCXX_FORCE_NEW
> GLIBCXX_DEBUG_MESSAGE_LENGTH
>
> Could you tell me how to enable GLIBCXX_3* and CXXABI in yocto build?

It depends on linker support and the value of the --enable-symvers
configure option.

See https://gcc.gnu.org/onlinedocs/libstdc++/manual/configure.html

--enable-symvers[=style]

In 3.1 and later, tries to turn on symbol versioning in the shared
library (if a shared library has been requested). Values for 'style'
that are currently supported are 'gnu', 'gnu-versioned-namespace',
'darwin', 'darwin-export', and 'sun'. Both gnu- options require that a
recent version of the GNU linker be in use. Both darwin options are
equivalent. With no style given, the configure script will try to
guess correct defaults for the host system, probe to see if additional
requirements are necessary and present for activation, and if so, will
turn symbol versioning on. This option can change the library ABI.

And the comments in libstdc++-v3/acinclude.m4

dnl
dnl Add version tags to symbols in shared library (or not), additionally
dnl marking other symbols as private/local (or not).
dnl
dnl Sets libtool_VERSION, and determines shared library SONAME.
dnl
dnl  This depends on GLIBCXX CHECK_LINKER_FEATURES, but without it assumes no.
dnl
dnl --enable-symvers=style adds a version script to the linker call when
dnl       creating the shared library.  The choice of version script is
dnl       controlled by 'style'.
dnl --disable-symvers does not.
dnl
dnl  +  Usage:  GLIBCXX_ENABLE_SYMVERS[(DEFAULT)]
dnl       Where DEFAULT is either 'yes' or 'no'.  Passing `yes' tries to
dnl       choose a default style based on linker characteristics.  Passing
dnl       'no' disables versioning.
dnl



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux