我正在Linux上构建C ++可执行文件。可执行文件链接到一些Boost库中。
这是我尝试运行二进制文件时的输出:
root@yourbox:~/work/dev/c++/projects/testfgci/dist/Debug/GNU-Linux-x86$ ./testfgci
./testfgci: error while loading shared libraries: libboost_system.so.1.45.0: cannot open shared object file: No such file or directory
然后,我在二进制文件上运行ldd来检查依赖关系:
root@yourbox:~/work/dev/c++/projects/testfgci/dist/Debug/GNU-Linux-x86$ ldd testfgci
linux-gate.so.1 => (0x00380000)
libboost_system.so.1.45.0 => not found
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00b50000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x005f6000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x0099a000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x001b3000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00110000)
/lib/ld-linux.so.2 (0x00ea2000)
我不确定为什么找不到liboos_system.sl.1.45.0 SO。我今天早些时候成功构建了它。谁能解释?
找不到该库。
默认情况下会在中查找库/lib
,/usr/lib
并在中指定目录/etc/ld.so.conf
。
通常,系统库(例如boost,如果通过软件包管理器安装的话)位于中/usr/lib
,但实际情况并非如此。
您的Boost库位于系统上的什么位置?您是自己编译的吗?在这种情况下,您应该告诉动态链接器通过使用LD_LIBRARY_PATH
环境变量在它们所在的目录中查找您的库:
LD_LIBRARY_PATH="your/boost/directory" ./testfgci
无论如何,我建议您使用包管理器安装boost库,这会使您的生活变得更加简单。
我正在编写一个在后端使用redis的C程序。 我尝试过构建/安装hiredis(make 使用以下命令行构建:gcc-v example.c-l hiredis-I/usr/local/include/hiredis/ 我尝试过的事情: pkg info hiredis返回0 通过(make)卸载/重新安装 都没有运气。 我猜我没有为gcc正确链接程序,但是文档中没有任何构建示例。 我做错了什么,
问题内容: 该程序是Xenomai测试套件的一部分,可从Linux PC交叉编译为Linux + Xenomai ARM工具链。 编辑: 确定,我没有注意到.1结尾是文件名的一部分。那到底是什么意思呢? 问题答案: 更新 尽管下面我写的是关于共享库的一般答案,但我认为这类消息的最常见原因是因为您已经安装了一个软件包,但没有安装该软件包的“ -dev”版本。 好吧,这不是在说谎-该列表中没有任何内容
问题内容: 尝试导入OpenCV时,使用出现以下错误: 不确定如何解决- 尝试使用Google的新协作工具。笔记本在这里:https : //drive.google.com/file/d/0B7-sJqBiyjCcRmFkMzl6cy1iN0k/view?usp=sharing 问题答案: 通过将其作为脚本的前两行来解决此问题:
docker和yml gitlab yml文件 测试脚本中的远程url 执行阶段:测试时出现管道错误 有人能帮我解决这个Gitlab管道问题吗? 我已经使用docker compose yml文件将Gitlab pipeline设置为使用网格设置运行selenium测试,但似乎remoteWebdriver url连接无法使用网格设置 本地工作正常,当我有docker运行,docker组成,然后运
问题内容: 我正在尝试使用Ubuntu 10.04服务器,sphinx,myql2版本0.2.7和percona服务器5.5(Myslql 5.5)运行Rails两个应用程序。irb中的mysql2可以正常工作,我可以连接到数据库。这个rails 2应用程序正在另一个带有MySql 5.1的Centos服务器中工作。当我跑步时: 我得到: mysql2.so:libmysqlclient_r.so
我跟随这篇关于人工智能农业的文章与谷歌合作 https://medium.com/deepquestai/ai-in-agriculture-detecting-defects-in-apples-b246799b329c 当运行python文件时,它会给出一个错误 ImportError:libcublas.so.10.0:无法打开共享对象文件:运行时没有此类文件或目录 使用TensorFlow