RVCT2.0_Linker_Utilities中文资料
需积分: 0 179 浏览量
更新于2008-05-20
收藏 3.53MB PDF 举报
### RVCT2.0_Linker_Utilities中文资料
#### RealView 编译工具:链接程序与实用程序概览
RealView编译工具 (RVCT) 2.0 版是 ARM 公司推出的用于 ARM 架构开发的一套强大工具集,其中包含了链接程序以及其他实用工具,用于支持 ARM 处理器上的软件开发。本资料主要围绕 RVCT 2.0 版中的链接程序和实用程序进行了详细介绍。
#### 链接程序和实用程序概述
**1. 关于链接程序和实用程序**
链接程序(Linker)是软件开发过程中的一个关键组件,它的主要职责是将编译后的目标文件合并成可执行文件或库文件。RVCT 2.0 版中的链接程序不仅支持 ARM 架构的目标文件,还提供了多种高级特性来帮助开发者更有效地管理和优化链接过程。
此外,RVCT 还提供了一系列实用程序,如 `armlink` 命令,用于链接多个目标文件;`fromELF` 实用程序,用于转换 ELF 文件格式等。这些工具大大简化了软件开发和调试的过程。
**2. armlink 命令语法**
- **关于 armlink**: `armlink` 是 RVCT 中的一个核心链接工具,用于连接多个目标文件或库文件以生成最终的可执行文件或共享库。
- **armlink 命令语法**: `armlink` 提供了一整套丰富的命令行选项,例如 `-o` 指定输出文件名,`-T` 指定链接脚本等,这使得开发者能够精细控制链接过程的各个方面。
#### 使用基本链接程序功能
**3. 指定映像结构**
- **节布局**: 在链接过程中,链接程序需要确定如何在最终的映像文件中布局各个段(section)。RVCT 支持通过命令行选项或链接脚本来控制各个段的布局,从而优化内存使用和加载时间。
- **优化和修正**: RVCT 的链接程序提供了一些选项来帮助优化最终生成的映像文件,例如可以通过设置符号表和重定位表的压缩方式来减小文件大小。
**4. 使用命令行选项创建简单映像**
- **创建简单映像**: 通过指定必要的命令行选项,开发者可以直接在命令行界面下使用 `armlink` 创建简单的映像文件。例如,使用 `-o` 选项指定输出文件名,使用 `-T` 选项指定链接脚本路径等。
#### 访问映像符号
**5. ARM/Thumb 同义词**
- **ARM/Thumb 同义词**: RVCT 支持 ARM 和 Thumb 指令集之间的自动转换。当链接 ARM 和 Thumb 代码混合的程序时,RVCT 能够处理不同指令集之间的兼容性和转换问题。
**6. 访问链接程序定义的符号**
- **访问符号**: 开发者可以通过链接程序生成的映像文件中的符号表来访问全局和局部符号。RVCT 支持多种方式访问这些符号,包括通过命令行选项指定符号的可见性等。
**7. 隐藏和重命名全局符号**
- **隐藏和重命名**: RVCT 的链接程序允许开发者通过命令行选项或链接脚本来隐藏某些全局符号或者重命名符号,这对于避免符号冲突或进行符号管理非常有用。
#### 使用分散载入描述文件
**8. 分散载入**
- **关于分散载入**: 分散载入是一种技术,允许开发者在链接阶段定义内存映射,从而控制代码和数据的物理位置。RVCT 支持通过分散载入描述文件来实现这一目的。
**9. 分散载入描述文件的形式语法**
- **分散载入描述文件**: RVCT 提供了一个专门的分散载入描述文件格式,用于指定各个段在内存中的布局。这种文件通常包含区和段的定义,以及它们在内存中的位置信息。
**10. 指定区和节地址的示例**
- **示例**: 通过具体的示例展示如何在分散载入描述文件中定义不同的区域(area)和段(section),以及如何指定它们的起始地址和大小。
#### 创建与使用库
**11. 关于库**
- **库管理**: 库是预编译的对象集合,用于重复利用代码。RVCT 支持创建静态库和动态库,并提供工具来管理和操作这些库。
**12. 库搜索、选择和扫描**
- **库搜索**: RVCT 的链接程序支持自动搜索路径中的库文件,也可以通过命令行选项显式指定要使用的库。
**13. ARM 库管理程序**
- **库管理程序**: RVCT 提供了专门的库管理工具,用于创建、更新和维护库文件。
#### 使用 fromELF
**14. fromELF 实用程序**
- **关于 fromELF**: `fromELF` 是 RVCT 中的一个实用程序,用于将 ELF 格式的文件转换为其他格式,比如二进制文件或 HEX 文件。这对于在非标准环境中部署或调试 ARM 程序非常有帮助。
- **fromELF 命令行选项**: `fromELF` 提供了多种命令行选项,如 `-b` 用于生成二进制文件,`-m` 用于生成 MAP 文件等,使得开发者可以根据具体需求灵活配置输出文件的格式。
RVCT 2.0 版中的链接程序和实用程序提供了强大的功能和支持,帮助开发者更高效地完成 ARM 平台的软件开发任务。无论是基础的链接功能还是高级的优化选项,RVCT 都能为开发者提供所需的一切。
hjm23
- 粉丝: 0
- 资源: 6
最新资源
- 《声音的数字化》教案PDF
- 基于springboot的医学电子技术线上翻转课堂系统源码(java毕业设计完整源码).zip
- 六自由度机械臂三套代码-三次 五次 七次多项式样条插值曲线、五次B样条曲线插值-2 轨迹规划,圆弧轨迹,机器人工具箱,带源码注释 起始点、中间点、终止点可自行修改 (一共三套代码 机械臂数据可自
- 基于springboot的医疗废物管理系统源码(java毕业设计完整源码).zip
- 基于python+OpenCV调用 Caffe 框架以及训练好的残差神经网络进行人脸检测项目源码
- 基于springboot的医院预约挂号系统源码(java毕业设计完整源码+LW).zip
- 免费Profinet C语言源码
- 直流微电网仿真模型【含个人笔记+建模过程】包含光伏+boost、储能+双向DCDC、三相并网逆变器+锁相环、三相逆变+异步电动机等部分 光伏发电经过boost升压到直流母线750V 采用电导增量法实
- 机械设计送线剥皮编织铜箔铝箔去棉线sw18可编辑全套设计资料100%好用.zip
- 基于springboot的半成品配菜平台设计与实现源码(java毕业设计完整源码).zip
- Python入门基础知识点详解及应用
- 基于springboot的南皮站化验室源码(java毕业设计完整源码).zip
- 西门子S7200smartPLC与三菱FX3uPlc做485Modbus RTU通信,西门子S7200smartPLC做主站轮训扫描读取写去数据转入三菱Plc 通信已测试没有问题,
- 机械设计塑料礼盒封条机sw21全套设计资料100%好用.zip
- 基于springboot的博物馆文博资源库系统设计源码(java毕业设计完整源码).zip
- NModbus4 C# 源码