加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

指定在Linux上启动可执行文件时要使用的动态链接器/加载程序

发布时间:2020-12-14 01:01:46 所属栏目:Linux 来源:网络整理
导读:我有一个奇怪的 Linux系统,其中大部分软件是针对Glibc编译的,而其他一些软件是针对uClibc编译的. 由于Linux是我发布和执行时的标准发行版,因此从glibc调用标准动态链接器(/lib/ld.so.1). 我正在寻找一种在启动任何可执行文件之前指定动态加载程序的方法,所以
我有一个奇怪的 Linux系统,其中大部分软件是针对Glibc编译的,而其他一些软件是针对uClibc编译的.

由于Linux是我发布和执行时的标准发行版,因此从glibc调用标准动态链接器(/lib/ld.so.1).

我正在寻找一种在启动任何可执行文件之前指定动态加载程序的方法,所以当我想运行针对uClibc编译的软件时,我可以定义启动机制来使用uClibc动态加载器(/lib/ld-uClibc.so.0 ).

有任何想法吗?

解决方法

I’m looking for a way to specify the dynamic loader before launching any executable so when I want to run software which was compiled against uClibc

您应该使用链接器–dynamic-linker参数在针对uClibc构建时指定正确的动态加载程序.例如.

gcc -nostdlib -Wl,--dynamic-linker=/lib/ld-uClibc.so.0 
   /lib/uClibc-crt1.o main.o -L/path/to/uClibc -lc

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读