arm-linux-ld链接工具介绍
2018-04-08 14:09
239 查看
arm-linux-ld是一个链接程序工具,其作用主要是将汇编过的多个二进制文件进行链接,成为一个可执行的二进制文件,这个命令的选项有好多,具体用到的时候大家可以使用--help 选项来查看具体的选项用法。
选项用法选项用法:
下面将几个重要的命令介绍一下:
-T File --script FILE指定一个链接器脚本文件,指示编译器按照脚本进行链接;
-Tbss ADDRESS bss段的链接地址;
-Ttext ADDRESS 代码段链接地址;
-Tdata ADDRESS 数据段链接地址;
-r --relocateable 产生可重定向的输出,比如,产生一个输出文件它可再次作为‘ld'的输入,这经常被叫做“部分链接”,当我们需要将几个小的.o文件链接成为一个.o文件的时候,需要使用此选项。
-e 指定程序的入口标号;
-l LibName 指定要链接的库;
-L Directory 增加库文件的搜索路径;
-o FILE 设置输出文件名;
-O 输出文件最优;
-a 指定arch体系;
例如:
arm-linux-ld -Ttext 0x10000000 main.o -o main_elf
这句话是将main.o 文件连接成ELF格式文件,在连接的过程中,-Ttext 0x10000000这个选项告诉连接器我的这段main.o程序需要被加载到RAM的0x10000000地址处执行。所以在连接的时候main.o第一条语句的连接地址就是0x10000000,第二条语句就是跟在其后面。有很多人都议论连接地址和运行地址这个怎么说的都有。运行地址可以等于连接地址,还可以认为运行地址是pc指针指向的地址,就是正在执行指令的地址。只要理解了这个概念就可以了。
选项用法选项用法:
下面将几个重要的命令介绍一下:
-T File --script FILE指定一个链接器脚本文件,指示编译器按照脚本进行链接;
-Tbss ADDRESS bss段的链接地址;
-Ttext ADDRESS 代码段链接地址;
-Tdata ADDRESS 数据段链接地址;
-r --relocateable 产生可重定向的输出,比如,产生一个输出文件它可再次作为‘ld'的输入,这经常被叫做“部分链接”,当我们需要将几个小的.o文件链接成为一个.o文件的时候,需要使用此选项。
-e 指定程序的入口标号;
-l LibName 指定要链接的库;
-L Directory 增加库文件的搜索路径;
-o FILE 设置输出文件名;
-O 输出文件最优;
-a 指定arch体系;
例如:
arm-linux-ld -Ttext 0x10000000 main.o -o main_elf
这句话是将main.o 文件连接成ELF格式文件,在连接的过程中,-Ttext 0x10000000这个选项告诉连接器我的这段main.o程序需要被加载到RAM的0x10000000地址处执行。所以在连接的时候main.o第一条语句的连接地址就是0x10000000,第二条语句就是跟在其后面。有很多人都议论连接地址和运行地址这个怎么说的都有。运行地址可以等于连接地址,还可以认为运行地址是pc指针指向的地址,就是正在执行指令的地址。只要理解了这个概念就可以了。
相关文章推荐
- arm-none-linux-gnueabi-ld默认链接脚本
- arm-linux-系列工具,ld,ar,as,objcopy
- 定制ARM For Linux交叉编译工具详细介绍
- arm-linux-系列工具,ld,ar,as,objcopy
- 【转】arm-linux-ld命令 ld链接脚本
- arm-linux-ld命令 ld链接脚本
- arm-linux-objdump工具介绍
- arm-linux-ld命令 ld链接脚本
- arm-linux-ld命令 ld链接脚本(不错,推荐可以学习一些lds链接脚本文件)
- arm-softfloat-linux 工具制作 as ld too old 解决方法(转载)
- 【转】arm-linux-ld命令 ld链接脚本
- Ubuntu8.04下的ARM交叉编译工具链(arm-linux-)详细介绍 --转载
- arm-linux-系列工具,ld,ar,as,objcopy
- arm-linux-系列工具,ld,ar,as,objcopy
- arm-linux-系列工具,ld,ar,as,objcopy (转)
- arm-linux-系列工具,ld,ar,as,objcopy
- arm-linux-gcc编译工具介绍
- Linux下C++开发工具介绍
- linux和Uinx下的文件拆分工具split介绍
- Linux下性能监控工具介绍