gpt4 book ai didi

c++ - 链接 boost 库时引发 "Error while loading shared libraries",但我无法使用 root 访问权限来修复它

转载 作者:行者123 更新时间:2023-12-01 22:58:04 25 4
gpt4 key购买 nike

我正在尝试在我学校的 super 计算机上运行一些代码,在 Ubuntu 上运行。该代码恰好需要 boost 中的计时器库。

所以我上传了 boost 1.71.0 存储库,并成功构建了它。

然后我用以下命令构建了它(成功)g++ -g src/foo.cpp -o run/foo -I ../boost_1_71_0/-L ../boost_1_71_0/stage/lib/-lboost_timer -fopenmp -std=c++11

然后当我尝试运行该文件时,会发生这种情况:加载共享库时出错:libboost_timer.so.1.71.0:无法打开共享对象文件:没有这样的文件或目录

我浏览了几个论坛讨论,显然运行以下命令应该更新库路径并修复所有内容:sudo/sbin/ldconfig -v但由于我没有 root 访问权限,因此无法运行它。我正在寻找一种不涉及任何 sudoing 的解决方法。

最佳答案

您可以通过确保 ../boost_1_71_0/stage/lib/ 位于 LD_LIBRARY_PATH 中来运行程序,以便动态加载器知道在哪里搜索 Boost 共享库。按如下方式运行您的程序,假设 Boost 库位于相对于您的程序在磁盘上所在目录的 ../boost_1_71_0/stage/lib/

LD_LIBRARY_PATH=../boost_1_71_0/stage/lib/ ./program

关于c++ - 链接 boost 库时引发 "Error while loading shared libraries",但我无法使用 root 访问权限来修复它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58004440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com