Eclipse c++ 库在调试模式下找不到,但在发布模式下找到

Eclipse c++ library not found in debug mode but found in release mode

本文关键字:模式 布模式 c++ 调试 找不到 Eclipse      更新时间:2023-10-16

我正在尝试使用 Eclipse 调试我用 C++ 编写的程序,但在选择调试选项时遇到了问题。

/home/dupinf/workspace/HashTest/Debug/HashTest: 
/sw/st/gnu_compil/gnu/linux-rh-ws-4-x86_64/lib64/libstdc++.so.6: 
version `GLIBCXX_3.4.15' not found

当我刚刚运行版本时,它运行顺利。但是当我尝试进入调试模式时,出现错误。我不明白为什么它不会以一种模式找到库,而在另一种模式下找不到库

为了能够调试和使用断点,我应该更改什么?

所以我发现了问题所在:

1) 转到我的调试
的启动配置2)转到环境选项卡
3) 将带有路径的 LD_LIBRARY_PATH 变量添加到我的库中
4) 选中覆盖存在变量的框。

然后我可以顺利调试。

请注意,即使您在终端中修改了LD_LIBRARY_PATH,在调试模式下也不会考虑它,而只是在运行模式下考虑。

希望它可以帮助某人;)

与外部库链接时,请记住,库是在发布或调试模式下构建的。在调试模式下构建库时,它包含调试器挂钩到以监视应用程序状态的所有调试符号/信息。如果您尝试构建应用程序的调试版本并链接到发布版本 - 这将导致问题(因为您链接的库在库的发布或调试版本中的组织方式不同)。解决方案:在调试模式下重建外部库,并链接到这些库