加载共享库时出现Linux错误:无法打开共享对象文件:没有此类文件或目录

该程序是Xenomai测试套件的一部分,从Linux PC交叉编译到Linux+Xenomai ARM工具链中

#echo$LD\u库路径
/解放党
#ls/lib
ld-2.3.3.so libdl-2.3.3.so libpthread-0.10.so
ld linux.so.2 libdl.so.2 libpthread.so.0
libc-2.3.3.so libgcc_s.so libpthread_rt.so
libc.so.6 libgccu.so.1 libstdc++.so.6
libcrypt-2.3.3.so libm-2.3.3.so libstdc++.so.6.0.9
libcrypt.so.1 libm.so.6
#/时钟测试
./clocktest:加载共享库时出错:libpthread\u rt.so.1:无法打开共享对象文件:没有此类文件或目录

编辑:好的,我没有注意到文件末尾的.1是文件名的一部分。这到底是什么意思

您的库是一个动态库。
您需要告诉操作系统在运行时可以在哪里找到它

为此,,
我们需要做这些简单的步骤:

  1. 如果您不知道库的位置,请查找库的位置
sudo find/-name\u文件的\u name\u。so
  1. 检查是否存在动态库路径环境变量(LD\u library\u path
$echo$LD\u库\u路径

如果没有要显示的内容,请添加默认路径值(如果愿意,也可以不显示)

$LD\u LIBRARY\u PATH=/usr/local/lib
  1. 我们添加所需的路径,导出它并尝试应用程序

注意,路径应该是path.so.something所在的目录。
因此,如果path.So.something/my\u库/path.So.something中,那么它应该是:

$LD\u LIBRARY\u PATH=$LD\u LIBRARY\u PATH:/my\u LIBRARY/
$export LD\u LIBRARY\u路径
美元/我的应用程序

对来源的引用

发表评论