RealView® 编译工具 链接器参考指南

4.0 版


Table of Contents

前言
关于本手册
适用对象
使用本手册
印刷约定
更多参考出版物
反馈
对 RealView 编译工具的反馈
关于本手册的反馈
1. 简介
1.1. ARM 链接器
1.2. 与旧对象和库的兼容性
2. 链接器命令行选项
2.1. 命令行选项
2.1.1. --[no_]add_needed
2.1.2. --arm_only
2.1.3. --arm_linux
2.1.4. --[no_]autoat
2.1.5. --be8
2.1.6. --be32
2.1.7. --[no_]bestdebug
2.1.8. --bpabi
2.1.9. --[no_]branchnop
2.1.10. --[no_]callgraph
2.1.11. --callgraph_file=filename
2.1.12. --callgraph_output=fmt
2.1.13. --cgfile=type
2.1.14. --cgsymbol=type
2.1.15. --cgundefined=type
2.1.16. --[no_]combreloc
2.1.17. --[no_]compress_debug
2.1.18. --[no_]cppinit
2.1.19. --cpu=list
2.1.20. --cpu=name
2.1.21. --datacompressor=opt
2.1.22. --[no_]debug
2.1.23. --device=list
2.1.24. --device=name
2.1.25. --diag_error=tag[,tag,...]
2.1.26. --diag_remark=tag[,tag,...]
2.1.27. --diag_style=arm|ide|gnu
2.1.28. --diag_suppress=tag[,tag,...]
2.1.29. --diag_warning=tag[,tag,...]
2.1.30. --dll
2.1.31. --dynamic_debug
2.1.32. --dynamiclinker=name
2.1.33. --edit=file_list
2.1.34. --entry=location
2.1.35. --errors=file
2.1.36. --[no_]exceptions
2.1.37. --[no_]exceptions_tables=action
2.1.38. --[no_]export_all
2.1.39. --feedback=file
2.1.40. --feedback_image=option
2.1.41. --feedback_type=type
2.1.42. --[no_]filtercomment
2.1.43. --fini=symbol
2.1.44. --first=section_id
2.1.45. --[no_]force_so_throw
2.1.46. --fpic
2.1.47. --fpu=list
2.1.48. --fpu=name
2.1.49. --help
2.1.50. --info=topic[,topic,...]
2.1.51. --info_lib_prefix=opt
2.1.52. --init=symbol
2.1.53. --[no_]inline
2.1.54. --[no_]inlineveneer
2.1.55. input_file_list
2.1.56. --keep=section_id
2.1.57. --[no_]largeregions
2.1.58. --last=section_id
2.1.59. --[no_]legacyalign
2.1.60. --library=name
2.1.61. --libpath=pathlist
2.1.62. --library_type=lib
2.1.63. --licretry
2.1.64. --linux_abitag=version_id
2.1.65. --list=file
2.1.66. --[no_]list_mapping_symbols
2.1.67. --[no_]locals
2.1.68. --ltcg
2.1.69. --[un]mangled
2.1.70. --[no_]map
2.1.71. --match=crossmangled
2.1.72. --max_visibility=type
2.1.73. --[no_]merge
2.1.74. --[no_]muldefweak
2.1.75. --output=file
2.1.76. --override_visibility
2.1.77. --pad=num
2.1.78. --partial
2.1.79. --[no_]piveneer
2.1.80. --pltgot=type
2.1.81. --pltgot_opts=mode
2.1.82. --predefine=”string”
2.1.83. --[no_]prelink_support
2.1.84. --privacy
2.1.85. --profile=filename
2.1.86. --[no_]project=filename
2.1.87. --[no_]reduce_paths
2.1.88. --[no_]ref_cpp_init
2.1.89. --reinitialize_workdir
2.1.90. --reloc
2.1.91. --[no_]remove
2.1.92. --ro_base=address
2.1.93. --ropi
2.1.94. --rosplit
2.1.95. --runpath=pathlist
2.1.96. --rw_base=address
2.1.97. --rwpi
2.1.98. --[no_]scanlib
2.1.99. --scatter=file
2.1.100. --[no_]search_dynamic_libraries
2.1.101. --section_index_display=type
2.1.102. --shared
2.1.103. --show_cmdline
2.1.104. --soname=name
2.1.105. --sort=algorithm
2.1.106. --split
2.1.107. --[no_]startup=symbol
2.1.108. --strict
2.1.109. --[no_]strict_relocations
2.1.110. --[no_]symbols
2.1.111. --symdefs=file
2.1.112. --symver_script=file
2.1.113. --symver_soname
2.1.114. --sysv
2.1.115. --[no_]tailreorder
2.1.116. --unresolved=symbol
2.1.117. --userlibpath=pathlist
2.1.118. --[no_]veneershare
2.1.119. --verbose
2.1.120. --vfemode=mode
2.1.121. --via=file
2.1.122. --vsn
2.1.123. --workdir=directory
2.1.124. --[no_]xref
2.1.125. --[no_]xrefdbg
2.1.126. --xref{from|to}=object(section)
2.2. 控制文件命令
2.2.1. EXPORT
2.2.2. HIDE
2.2.3. IMPORT
2.2.4. RENAME
2.2.5. REQUIRE
2.2.6. RESOLVE
2.2.7. SHOW
3. 分散加载描述文件的形式语法
3.1. BNF 表示法和语法
3.2. 分散加载描述文件语法概述
3.3. 加载区描述
3.3.1. 加载区描述的语法
3.4. 执行区描述
3.4.1. 执行区描述语法
3.5. 寻址属性
3.6. 输入节描述
3.6.1. 输入节描述的语法
3.7. 解析多个匹配
3.8. 解析路径名
3.9. 分散加载文件中的表达式求值
3.9.1. 表达式用法
3.9.2. 表达式规则
3.9.3. 内置函数
3.9.4. ScatterAssert 函数
3.9.5. 与符号有关的函数
3.9.6. 示例
4. BPABI 和 SysV 共享库和可执行文件
4.1. 关于 BPABI
4.2. BPABI 支持的平台
4.2.1. BPABI 的链接器支持
4.2.2. ARM Linux 的链接器支持
4.3. 所有 BPABI 模型共有的概念
4.3.1. 导入和导出符号
4.3.2. 符号可见性
4.3.3. 自动导入和导出
4.3.4. 手动导入和导出
4.3.5. 符号版本控制
4.3.6. RW 压缩
4.4. 使用 SysV 模型
4.4.1. 内存模型
4.4.2. 自动动态符号表规则
4.4.3. 寻址模式
4.4.4. 线程局部存储
4.4.5. 相关链接器命令行选项
4.5. 使用裸机和类似于 DLL 的模型
4.5.1. 内存模型
4.5.2. 强制性的符号版本控制
4.5.3. 自动动态符号表规则
4.5.4. 寻址模式
4.5.5. C++ 初始化
4.5.6. 相关链接器命令行选项

所有权声明

除非本所有权声明在下面另有说明,否则带有 ®™ 标记的词语和徽标是 ARM Limited 在欧盟和其他国家/地区的注册商标或商标。 此处提及的其他品牌和名称可能是其各自所有者的商标。

除非事先得到版权所有人的书面许可,否则不得以任何形式修改或复制本文档包含的部分或全部信息以及产品说明。

本文档描述的产品还将不断发展和完善。 ARM Limited 将如实提供本文档所述产品的所有特性及其使用方法。 但是,所有暗示或明示的担保,包括但不限于对特定用途适销性或适用性的担保,均不包括在内。

本文档的目的仅在于帮助读者使用产品。 对于因使用本文档中的任何信息、文档信息出现任何错误或遗漏或者错误使用产品造成的任何损失或损害,ARM 公司概不负责。

使用 ARM 一词时,它表示 ARM 或其任何相应的子公司。

保密状态

本文档的内容是非保密的。 根据 ARM 与 ARM 将本文档交予的参与方的协议条款,使用、复制和公开本文档内容的权利可能会受到许可限制的制约。

受限访问是一种 ARM 内部分类。

产品状态

本文档的信息是开发的产品的最新信息。

Revision History
Revision A2008 年 9 月ARM® RealView® Development Suite 4.0 版
Copyright © 2008 ARM Limited. All rights reserved.ARM DUI 0381AC
Non-Confidential