如何解决如何修复/lib/libc.so.6:嵌入式设备上的版本“ GLIBC_2.17”运行时
我需要为无法升级/更改OS /运行时库的嵌入式设备构建可执行文件。我正在使用交叉编译的gcc arm-cortexa9-linux-gnueabi-g++ (GCC) 4.9.1
构建可执行文件。更改代码后-不确定到底是什么导致了此错误,这是运行时错误:
/usr/local/prog/gcc-4.7.2-native-armv7a-softfp/lib/libstdc++.so.6: version 'GLIBCXX_3.4.19' not found (required by ./myAppNameHere)
我试图静态链接libc
和libstdc++
-我的链接器选项是:
ADD_LINK_OPTIONS(-static-libstdc++ -static-libgcc)
此更改后,我收到一个新的运行时错误:
/lib/libc.so.6: version 'GLIBC_2.17' not found (required by myAppNameHere)
我尝试将链接器选项更改为:
ADD_LINK_OPTIONS(-static-libstdc++ -l:libc.a)
确保libc
是静态链接的。添加-l:libc.a
后,可执行文件的大小会大大增加,但不会更改运行时错误。
我还尝试将动态库与编译器一起提供并设置LD_LIBRARY_PATH
,但这使我遇到failed to load .so
错误...
关于如何解决此问题的任何想法?我知道用于构建OS /设备库的编译器版本与我用于构建应用程序的编译器不匹配,但是我无法更改此...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。