加载共享库时出错
我正在使用g ++编译器在Ubuntu上运行eclipse,我正在尝试运行一个使用xerces的示例程序。
构建没有产生任何错误,但是当我试图运行程序时,我会收到此错误:
error while loading shared libraries: libxerces-c-3.1.so: cannot open shared object file: No such file or directory
libxerces-c-3.1.so
在目录/opt/lib
中,我已将其作为eclipse中的库包含在内。我检查文件夹时文件就在那里。当我执行echo $LD_LIBRARY_PATH
时,也会列出/opt/lib
。
问题所在的任何想法?谢谢。
ldd libxerces-c-3.1.so
命令产生以下输出:
linux-vdso.so.1 => (0x00007fffeafff000)
libnsl.so.1 => /lib/libnsl.so.1 (0x00007fa3d2b83000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00007fa3d2966000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007fa3d265f000)
libm.so.6 => /lib/libm.so.6 (0x00007fa3d23dc000)
libc.so.6 => /lib/libc.so.6 (0x00007fa3d2059000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007fa3d1e42000)
/lib64/ld-linux-x86-64.so.2 (0x00007fa3d337d000)
没有找到相关结果
已邀请:
5 个回复
贸会
以查看它是否解决了问题。
茬贺努充尽
傻寺俊擒
并检查输出以查看是否可以找到所有依赖项。
殿虫
在Linux上有一些标准的地方:
还有很多其他人,但你最有可能留下
。 接下来,您需要告诉您的系统在哪里找到这些库。很酷的系统家伙(谁知道他在做什么)这样做的方法是使用
,但是,如果你在这里犯了错误,你可能会做你后悔的事情。使用该命令最安全的方法是使用标志
使命令详细,并指定需要添加的库目录。
完成。但是,如果你只想测试一些东西,那么直接从命令行使用你的
,如下所示:
或者,将以下内容添加到
脚本中。
现在您可以运行动态链接的命令。
贡炮逗握惫
这对我来说就像一个魅力。