ed0dfc9c6f
Some checks failed
linux-mips-gcc / linux-gcc-mipsel (Debug) (push) Waiting to run
linux-mips-gcc / linux-gcc-mipsel (Release) (push) Waiting to run
linux-mips64-gcc / linux-gcc-mips64el (Debug) (push) Waiting to run
linux-mips64-gcc / linux-gcc-mips64el (Release) (push) Waiting to run
linux-riscv64-gcc / linux-gcc-riscv64 (Debug) (push) Waiting to run
linux-riscv64-gcc / linux-gcc-riscv64 (Release) (push) Waiting to run
linux-x64-gcc / linux-gcc (Debug) (push) Waiting to run
linux-x64-gcc / linux-gcc (Release) (push) Waiting to run
linux-x86-gcc / linux-gcc (Debug) (push) Waiting to run
linux-x86-gcc / linux-gcc (Release) (push) Waiting to run
linux-aarch64-cpu-gcc / linux-gcc-aarch64 (Debug) (push) Successful in 1m32s
linux-aarch64-cpu-gcc / linux-gcc-aarch64 (Release) (push) Failing after 9s
linux-arm-gcc / linux-gcc-arm (Debug) (push) Successful in 1m45s
linux-arm-gcc / linux-gcc-arm (Release) (push) Successful in 1m38s
linux-arm-gcc / linux-gcc-armhf (Debug) (push) Successful in 2m1s
linux-arm-gcc / linux-gcc-armhf (Release) (push) Has been cancelled
14 lines
1.1 KiB
Markdown
14 lines
1.1 KiB
Markdown
***NOTE***
|
|
|
|
If you get linker errors about undefined references to symbols that involve types in the `std::__cxx11` namespace or the tag
|
|
`[abi:cxx11]` then it probably indicates that you are trying to link together object files that were compiled with different
|
|
values for the _GLIBCXX_USE_CXX11_ABI marco. This commonly happens when linking to a third-party library that was compiled with
|
|
an older version of GCC. If the third-party library cannot be rebuilt with the new ABI, then you need to recompile your code with
|
|
the old ABI,just like:
|
|
**g++ stringWrite.cpp -ljsoncpp -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0 -o stringWrite**
|
|
|
|
Not all of uses of the new ABI will cause changes in symbol names, for example a class with a `std::string` member variable will
|
|
have the same mangled name whether compiled with the older or new ABI. In order to detect such problems, the new types and functions
|
|
are annotated with the abi_tag attribute, allowing the compiler to warn about potential ABI incompatibilities in code using them.
|
|
Those warnings can be enabled with the `-Wabi-tag` option.
|