主机论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 137|回复: 5

我linux调用so文件,提示找不到,但是这样就可以,为什么?

[复制链接]

702

主题

1926

帖子

5510

积分

论坛元老

Rank: 8Rank: 8

积分
5510
发表于 2022-2-4 16:21:21 | 显示全部楼层 |阅读模式
我调用 1.so   他依赖2.so ,在同一个文件,调用时候提示依赖错误,用ldd  1.so ,提示找不到2.so,
百度查了半天,说放在/usr/lib64 里面就可以?我测试了下可以了。请问为什么。
回复

使用道具 举报

18

主题

40

帖子

136

积分

注册会员

Rank: 2

积分
136
发表于 2022-2-4 16:22:33 | 显示全部楼层
自动链接了啊
回复

使用道具 举报

26

主题

361

帖子

1104

积分

金牌会员

Rank: 6Rank: 6

积分
1104
发表于 2022-2-4 16:57:42 | 显示全部楼层
ldconfig
回复

使用道具 举报

51

主题

1058

帖子

2307

积分

金牌会员

Rank: 6Rank: 6

积分
2307
发表于 2022-2-4 17:02:01 | 显示全部楼层
因为/usr/lib64是默认的链接目录
而当前目录并不是默认的链接目录这点是为了安全性考虑的
回复

使用道具 举报

702

主题

1926

帖子

5510

积分

论坛元老

Rank: 8Rank: 8

积分
5510
 楼主| 发表于 2022-2-4 17:31:53 | 显示全部楼层
konololi 发表于 2022-2-4 17:02
因为/usr/lib64是默认的链接目录
而当前目录并不是默认的链接目录这点是为了安全性考虑的 ...

我程序调用本目录的东西还不行么?好奇怪。除了放这里,还有什么办法解决的么。
回复

使用道具 举报

51

主题

1058

帖子

2307

积分

金牌会员

Rank: 6Rank: 6

积分
2307
发表于 2022-2-4 17:02:00 | 显示全部楼层
斌斌 发表于 2022-2-4 17:31
我程序调用本目录的东西还不行么?好奇怪。除了放这里,还有什么办法解决的么。 ...

不行,就像本目录也不在PATH里面。

解决方法的话,
1.编译链接生成程序的时候可以指定链接路径
2.可以修改环境变量LD_LIBRARY_PATH ,把 本目录放进去
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|主机论坛

GMT+8, 2024-4-26 14:38 , Processed in 0.077022 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表