社区
Linux/Unix社区
帖子详情
是的我又来了!linux 静态编译程序,放在全新的linux机器上运行,报出的错误是找不到某个动态库?这是为什么?
xukun245
2018-05-24 03:32:45
用cmake写的,所有的链接库都是用的静态库链接的,但是把执行程序拿到一台新的机器上的时候运行的时候,报出错误找不到某个动态库?这是为什么,不是静态编译的吗?
这是我的cmake和报出的错误
...全文
526
5
打赏
收藏
是的我又来了!linux 静态编译程序,放在全新的linux机器上运行,报出的错误是找不到某个动态库?这是为什么?
用cmake写的,所有的链接库都是用的静态库链接的,但是把执行程序拿到一台新的机器上的时候运行的时候,报出错误找不到某个动态库?这是为什么,不是静态编译的吗? 这是我的cmake和报出的错误
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xukun245
2018-05-25
打赏
举报
回复
引用 4 楼 ckc 的回复:
应该是某些静态库使用了别的动态库 在目标机器上安装这个库就好了
这确实是这类问题的一个原因之一,我的这个问题我已经弄清楚了,因为我当时编译opencv的时候只有动态库,然后我是网上找的一个静态的库,版本跟我的不一样,所以最后导入库的时候,他只识别出了我自己编译的那个opencv的库,所以最后还是动态链接的,之前下载拷贝进来的静态库是无效的。自己重新编译静态库就行了
ckc
2018-05-25
打赏
举报
回复
应该是某些静态库使用了别的动态库 在目标机器上安装这个库就好了
xukun245
2018-05-24
打赏
举报
回复
。。。今天怎么不见赵4老师
xukun245
2018-05-24
打赏
举报
回复
难道我的静态库没用?? 但是本地已经编译成功了,把可执行文件拿到别人机器上的时候就会出现这种问题
xukun245
2018-05-24
打赏
举报
回复
哦对了,我ldd查看过了,确实是显示opencv的动态库not found ,但是我不解的是,我在cmake当中是用静态库链接的,为什么到了最后可执行文件会去找动态库呢
Linux
编程之GCC编译工具实战
本课程使得学员能够学会在
linux
中如何编译C/C++程序,使用GCC工具如何编译
静态
库,
动态库
,如何配置
运行
动态库
。
Linux
——
动态库
和
静态
库
https://blog.csdn.net/sjsjnsjnn/article/details/125836184目录一、认识动
静态
库 二...
动态库
的使用方法一方法二 四、
动态库
与
静态
库特点总结 1.
静态
库的制作 总结: 1.生成二进制(.o)文件
linux
下
动态库
和
静态
库的制作、寻
找
、比较及相关Makefile的编写
一.库的定义 什么是库,在windows平台和
linux
平台下都大量存在着库。 本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。....dll
动态库
.lib
静态
库 库即为源代码的二进制文件 2.在
linux
linux
下编程
动态库
和
静态
库编译使用
动态库
在程序编译时并不会被连接到目标代码中,而是在程序
运行
是才被载入,因此在程序
运行
时还需要
动态库
存在。
linux
下编程
动态库
文件为.so文件,
静态
库文件为.a文件 本文主要通过举例来说明在
Linux
中
C语言
静态
编译和动态编译
在
Linux
系统中,应用程序表现为两种文件,一种是可执行文件, 另一种是脚本文件。 可执行文件 可执行文件是计算机可以直接执行的程序,与windows系统的.exe程序相似,它是由源代码经过一定的手段翻译成计算机能够...
Linux/Unix社区
18,772
社区成员
11,463
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 专题技术讨论区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 专题技术讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章