腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
3
回答
列出在
Linux
上使用C/C++
执行
的程序中的共享库
、
、
我想知道在
Linux
上
执行
C/C++程序时加载了哪些动态库。int main() ...list = GetAllSharedLibraryFilePaths();列表应包含: libm.
so
.6,librt.
so
.1,...或者
路径
: /lib/x86_64-
linux
-gnu/libm.
so
.6、/lib/x86_64-
linux
-gnu/librt.
浏览 7
提问于2019-12-10
得票数 2
2
回答
更改ld-
linux
位置
、
、
、
、
我发现要加载库,可
执行
文件
首先会打开/lib/ld-
linux
-x86-64.
so
.2。所有与加载共享库相关的功能(在多个
路径
中搜索,使用rpath等)只有在加载ld-
linux
之后才能工作,因为是ld-
linux
实现了这些功能。在我看来,ld-
linux
.
so
位置是硬编码在可
执行
文件
中的(在我的可
执行
文件
上调用strings强化了这一理论)。
浏览 4
提问于2013-02-05
得票数 4
回答已采纳
1
回答
到ld-
linux
动态链接器/解释器的相对可
执行
路径
、
、
、
、
我希望发布和存档二进制
文件
(带有库的可
执行
文件
),这些二进制
文件
与尽可能多的
Linux
发行版和整个包可重定位兼容。这使得库可以与可
执行
文件
一起重新定位,并适用于除链接器本身的ld-
linux
之外的所有库。可以通过-Wl,--dynamic-linker=/my/path/ld-
linux
.
so
更改动态链接器
路径
或使用patchelf设置动态链接器
路径
,
浏览 5
提问于2019-02-23
得票数 9
1
回答
动态链接器如何
执行
/proc/self/exe
、
、
、
在
Linux
上
执行
动态链接的可
执行
文件
时,将调用动态链接器作为其解释器(在此中描述)。如果我理解正确的话,运行:将导致
Linux
执行
:我很难理解这将如何为/proc/self/exe工作。根据上面的逻辑,运行:将导
浏览 6
提问于2020-05-07
得票数 2
回答已采纳
1
回答
libcap.
so
.2更新到GLIBC_2.29时丢失
、
、
我在
执行
用exe编译的c
文件
时遇到了GLIBC版本的问题。/lib/x86_64-
linux
-gnu/libm.
so
.6: version 'GLIBC_2.29' not found现在我又犯了一个错误, error while loading s
浏览 5
提问于2020-05-18
得票数 0
回答已采纳
1
回答
如何在
Linux
上硬编码动态库
路径
、
、
、
、
我想在我的可
执行
文件
Linux
中对通向库的
路径
进行硬编码。在OS上,这是通过在构建库时在-o参数之后提供完整
路径
来实现的。例如,我在OS上构建了这样一个库:当我构建一个名为“bar”的可
执行
文件
,它与这个库链接,并且在可
执行
文件
上使用otool -L时,我得到以下输出: /
浏览 1
提问于2015-05-09
得票数 5
回答已采纳
1
回答
如何构建elf解释器(ld-
linux
.
so
.2/ld-2.17.
so
)作为静态库?
、
、
、
、
我遇到了以下问题:当我构建一个可
执行
文件
时,它会得到一个硬编码
路径
,指向一个叫做ELF解释器的东西。readelf -l program[Requesting program interpreter: /lib/ld-
linux
.
so
.2] 我追踪到这个库ld-
linux
-
so
.2我对这种行为不太满意,因为它使二进制
文件
非常不可移植-如果我更改/lib/ld-
linux
.<
浏览 11
提问于2013-07-29
得票数 5
2
回答
如何创建具有短满
路径
的符号链接?
、
、
、
我正在编辑一些上的
路径
,但没有重新编译它们。 我想用相同长度的
路径
替换/lib/ld-
linux
-armhf.
so
.3,这是我不能用相同长度的
路径
创建的,这是我可以创建的,而不需要在手机上生根。它应该是相同的长度,因为我正在编辑二进制
文件
。在下面列出的不同可能性之后,我选择了
路径
/data/data/com.clk/.
so
.3。我要做的是创建/data/data/
浏览 2
提问于2013-12-08
得票数 17
回答已采纳
2
回答
oplrun:加载共享库时出错:libopln1.
so
.12
、
、
、
、
当我
执行
/oplrun/path$ ./oplrun时,我会得到以下错误。 ./oplrun: error while loading shared libraries: liboplnl1.
so
.12: cannot open shared object file: No such
浏览 2
提问于2022-11-02
得票数 0
回答已采纳
1
回答
程序解释器在可
执行
文件
中的作用是什么?
、
、
、
我正在进行小精灵可
执行
文件
的分解和对精灵格式的理解。在那里,我看到lib64/ld-
linux
-x86-64.
so
.2在生成的可
执行
文件
中用作程序解释器。denied/snap/snapd/11107/lib/x86_64-
li
浏览 9
提问于2022-02-13
得票数 0
回答已采纳
1
回答
`不匹配’`ld /path/to/labary.
so
‘的行为?
、
、
、
、
movl $0, %edi我将代码组装为:$ as -o hello.o hello.s$ ld hello.o /usr/lib/x86_64-
linux
-musl/libc.a 这就生成了一个a.out
文件
,在
执行
时输出"Hello,world“。最后,我尝试了与前面静态链接版本相关的类似修改,使用-lc和-L,而不
浏览 0
提问于2020-07-29
得票数 2
回答已采纳
1
回答
lubuntu没有看到ocamlopt在NixOS上生成的可
执行
文件
。
、
、
、
我使用带有选项-linkall的"ocamlopt“本机编译器在NixOS (x86_64)中创建了可
执行
文件
”独立的x86_64“。生成的程序在NixOS中
执行
。到目前一切尚好
Linux
lubuntu 4.18.0-10-generic #11-Ubuntu SMP Thu Oct 11 15:13:55 UTC 2018 x86_64 x86
浏览 5
提问于2020-05-28
得票数 0
回答已采纳
3
回答
GLIBC依赖性
、
、
我有一个二进制
文件
,它需要一些*.
so
文件
来
执行
。现在,当我尝试在一些较旧的机器上
执行
它时,它显示如何将其搜索
路径
从/lib/libc.
so
.6更改为/lib/i386-
linux
-gnu/libc.
so
.6 所以我可以在同一台机器上运行两个不同
浏览 0
提问于2013-01-17
得票数 0
1
回答
为什么链接器要更改共享库名称?
、
、
通过“node”传递链接器命令行选项,我指定我希望程序链接的库
路径
和库名。但是得到的可
执行
文件
并不引用我指定的
文件
,它在/usr/lib中引用了一个不同的名称。libao-oboe.
so
的
路径
,链接器将返回libao-oboe.
so
。libc.
so
.6 => /lib/x86_64-
linux
-gnu/libc.
so
.6 (0x00007fa475c2b000)
浏览 10
提问于2017-09-08
得票数 3
回答已采纳
1
回答
由当前线程
执行
的共享对象
文件
路径
、
有没有办法获得当前正在由线程
执行
的.
so
的
文件
路径
/
文件
名?该程序是用c++编写的,并在64位
Linux
3.0机器上运行。
浏览 0
提问于2013-02-28
得票数 0
1
回答
显示ld通过-l找到库的
路径
、
、
有没有可能让g++/ld显示库的绝对
路径
,即-l选项解析到的库的绝对
路径
?在我的例子中,我尝试通过-llrs链接lrs库,我怀疑它会解析为/usr/lib/liblrs.
so
,但我想确认一下。
浏览 1
提问于2019-12-04
得票数 0
1
回答
无法将库目录添加到ld
、
在这个目录中有一个名为libmath.
so
的库。要将这个目录添加到ld中,我已经在te
文件
/etc/ld.
so
.conf中添加了
路径
。我已经通过
执行
sudo ldconfig重新加载了缓存。当我
执行
sudo ldconfig -p | grep libmath.
so
时,我得到了libmath.
so
(libc6) => /home/mathieu/lib/libmath.
so</
浏览 1
提问于2014-10-27
得票数 1
回答已采纳
1
回答
什么是“共享可
执行
文件
”?
、
、
共享可
执行
文件
总是需要解释器;否则它们是静态的,而不是动态的)。ELF对象
文件
是“共享可
执行
的”当且仅当它有一个.interp条目吗?或者“共享可
执行
文件
”是指“部分链接的可
执行
文件
”?/libvector.
so
创建一个可
执行
对象file prog2l,该表单可以在运行时与libvector.
so
链接
浏览 0
提问于2020-09-27
得票数 0
1
回答
将库包含到我项目
文件
夹中
、
、
我需要在我的项目
文件
夹中包含我正在使用的库,这样程序就可以在任何设备上实现。我到底该怎么做?我知道我应该修改.pro
文件
,并且我已经尝试过了:-lvl \有什么想法吗?谢谢
浏览 0
提问于2013-09-24
得票数 0
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Linux配置文件路径大全
linux-路径及文件名截取
交叉编译的Linux的头文件路径
linux,SSH 远程执行任务或者执行sh文件
探索静态库与动态库的“奥秘”
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券