[root@atlas800 lib]# strings libdhnetsdk.so |grep GCC
GCC_3.0
GCC: (GNU Toolchain for the A-profile Architecture 8.2-2018.11 (arm-rel-8.26)) 8.2.1 20180802
[root@atlas800 lib]# strings libdhnetsdk.so |grep GLIB
GLIBC_2.17
查看系统支持的GLIBC库
[root@atlas800 lib]# strings /usr/lib64/libstdc++.so.6 |grep GLIBC
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBC_2.17
GLIBCXX_DEBUG_MESSAGE_LENGTH
[root@atlas800 lib]# strings /usr/lib64/libstdc++.so.6 |grep GCC
GCC_4.2.0
GCC_3.3
GCC_3.0
疑问
尽管系统包含了so文件依赖的C/C++库,但是在编译过程中,还是出现如下的问题:undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_replace_aux(unsigned long, unsigned long, unsigned long, char)'
解决方案
升级系统的GCC编译器版本到7,原本系统版本gcc version 4.8.2 (GCC)