RealView® Compilation Tools リンカリファレンスガイド

バージョン 4.0


Table of Contents

1. 序章
本書について
対象読者
本書の構成
表記規則
参考資料
フィードバック
RealView Compilation Tools に関するフィードバック
本書に関するフィードバック
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 の EU またはその他の国における登録商標および商標です。 本書に記載されている他の製品名は、各社の所有する商標です。

本書に記載されている情報の全部または一部、ならびに本書で紹介する製品は、著作権所有者の文書による事前の許可を得ない限り、転用・複製することを禁じます。

本書に記載されている製品は、今後も継続的に開発・改良の対象となります。 本書に含まれる製品およびその利用方法についての情報は、ARM が利用者の利益のために提供するものです。 したがって当社では、製品の市販性または利用の適切性を含め、暗示的・明示的に関係なく一切の責任を負いません。

本書は、本製品の利用者をサポートすることだけを目的としています。 本書に記載されている情報の使用、情報の誤りや欠落、または本製品の誤使用によって生じた損失や損傷について、ARM Limited は一切責任を負いません。

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 0381AJ
Non-Confidential