我对此感到非常生气,所以非常感谢任何帮助。
我有一个为arm-linux 编译的C++ 应用程序。我有两个不同的版本:
- 调试(使用 -o0 -g3 编译)
- 发布(使用 -o3 编译)
两个版本的包含路径、库路径和库都是相同的。
当我运行调试版本时,它崩溃了(我正在调查原因)。
当我运行发布版本时,我收到此错误:
../Appl_arm-linux_Release:/usr/lib/libstdc++.so.6:找不到版本 GLIBCXX_3.4.20(../Appl_arm-linux_Release 需要)
我不明白为什么 Debug 版本可以在 Release 版本甚至无法加载的系统上运行。
最佳答案
您可以尝试使用 -static-libstdc++ 链接器选项来静态链接 libstdc++。来自信息here ,看起来您仍然可以动态链接其他库。
关于c++ - arm-linux libstdc++ 调试和发布的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30983857/