命令行输入
g++ -v
示例输出
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/aarch64-linux-gnu/10.3.1/lto-wrapper
Target: aarch64-linux-gnu
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,fortran,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl --without-cloog --enable-gnu-indirect-function --build=aarch64-linux-gnu --with-stage1-ldflags=' -Wl,-z,relro,-z,now' --with-boot-ldflags=' -Wl,-z,relro,-z,now' --disable-bootstrap --with-multilib-list=lp64 --enable-bolt
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 10.3.1 (GCC)
总结网络上的搜索结果,如果GCC版本大于5.1,那么_GLIBCXX_USE_CXX11_ABI参数都是1
如果要编译低版本的软件,_GLIBCXX_USE_CXX11_ABI参数需要设置为0
新建一个文件
vim test.cpp
将下面的代码复制进去,wq保存
#include <iostream>
using namespace std;
int main() {
#ifdef _GLIBCXX_USE_CXX11_ABI
cout << _GLIBCXX_USE_CXX11_ABI << endl;
#else
cout << "not defined" << endl;
#endif
}
使用g++进行编译
g++ -o test test.cpp
运行可执行文件
./test
这将会打印输出_GLIBCXX_USE_CXX11_ABI参数的值
示例版本:
Ascend-cann-llm_7.0.0_linux-aarch64_torch2.0.1-abi1.tar.gz
Ascend-cann-atb_7.0.0_linux-aarch64_abi1.run