链接器选项可控制链接操作。可以在命令行上或命令文件中使用这些选项。链接器选项必须在前面加连字符 (-)。各选项可以用可选的空格与参数(如果选项带有参数)隔开。
表 12-1 基本选项汇总
选项 |
别名 |
说明 |
段 |
--run_linker |
-z |
启用链接 |
节 12.3 |
--output_file |
-o |
为可执行输出模块命名。默认文件名为 a.out。 |
节 12.4.22 |
--map_file |
-m |
生成输入和输出段(包括空洞)的映射或列表,并将列表放置在 文件名 中。 |
节 12.4.17 |
--stack_size |
-stack |
将 C 系统栈大小设置为 大小 字节,并定义全局符号来指定栈大小。默认值 = 1K 字节 |
节 12.4.27 |
--heap_size |
-heap |
将堆大小(对于 C 中的动态存储器分配)设为 大小 字节,并定义全局符号来指定栈大小。默认值 = 1K 字节 |
节 12.4.13 |
表 12-2 文件搜索路径选项汇总
选项 |
别名 |
说明 |
段 |
--library |
-l |
将归档库或链接命令文件名命名为链接器输入 |
节 12.4.15 |
--disable_auto_rts |
|
禁止自动选择运行时支持库 |
节 12.4.8 |
--priority |
-priority |
满足由包含该符号定义的第一个库实现的未解析引用
|
节 12.4.15.3 |
--reread_libs |
-x |
强制重新读取库,以解析反向引用 |
节 12.4.15.3 |
--search_path |
-i |
在查找默认位置之前,更改库搜索算法以查找用路径名命名的目录。此选项必须出现在 --library 选项之前。 |
节 12.4.15.1 |
表 12-4 诊断选项汇总
选项 |
别名 |
说明 |
段 |
--diag_error |
|
将由num标识的诊断分类为错误 |
节 12.4.7 |
--diag_remark |
|
将由num 标识的诊断分类为备注 |
节 12.4.7 |
--diag_suppress |
|
抑制由num标识的诊断 |
节 12.4.7 |
--diag_warning |
|
将由num标识的诊断分类为警告 |
节 12.4.7 |
--display_error_number |
|
显示诊断的标识符及其文本 |
节 12.4.7 |
--emit_references:file[=file] |
|
发出包含段信息的文件。这些信息包括段大小、定义的符号和对符号的引用。 |
节 12.4.7 |
--emit_warnings_as_errors |
-pdew |
将警告视为错误 |
节 12.4.7 |
--issue_remarks |
|
发出备注(非严重警告) |
节 12.4.7 |
--no_demangle |
|
禁止还原诊断中的符号名称 |
节 12.4.19 |
--no_warnings |
|
抑制警告诊断(仍会发出错误) |
节 12.4.7 |
--set_error_limit |
|
将错误限值设置为 num。在达到此错误数量后,链接器将放弃链接。(默认为 100。) |
节 12.4.7 |
--verbose_diagnostics |
|
提供详细的诊断,以换行方式显示原始源代码 |
节 12.4.7 |
--warn_sections |
-w |
创建未定义的输出段时显示一条消息 |
节 12.4.31 |
表 12-5 链接器输出选项汇总
选项 |
别名 |
说明 |
段 |
--absolute_exe |
-a |
生成绝对可执行模块。这是默认设置;如果 --absolute_exe 和 --relocatable 均未指定,链接器的行为就像指定了 --absolute_exe 一样。 |
节 12.4.3.1 |
--mapfile_contents |
|
控制映射文件中包含的信息。 |
节 12.4.18 |
--relocatable |
-r |
生成不可执行、可重定位的输出模块 |
节 12.4.3.2 |
--xml_link_info |
|
生成结构良好的 XML 文件,其中包含有关链接结果的详细信息 |
节 12.4.32 |
表 12-7 运行时环境选项汇总
选项 |
别名 |
说明 |
段 |
--arg_size |
--args |
分配可供加载程序传递参数之用的存储器 |
节 12.4.4 |
--fill_value |
-f |
为输出段内的空洞设置默认填充值;fill_value 是 64 位常数 |
节 12.4.12 |
--ram_model |
-cr |
在加载时初始化变量 |
节 12.4.24 |
--rom_model |
-c |
在运行时自动初始化变量 |
节 12.4.24 |
--trampolines |
|
生成 far call trampolines;默认开启 |
节 12.4.29 |
表 12-8 其他选项汇总
选项 |
别名 |
说明 |
段 |
--linker_help |
-help |
显示有关语法和可用选项的信息 |
– |
--minimize_trampolines |
|
选择 trampoline 最小化算法(参数可选;算法默认为 postorder) |
节 12.4.29.2 |
--preferred_order |
|
为函数放置设定优先级 |
节 12.4.23 |
--zero_init |
|
控制对未初始化变量的预初始化。默认为 on。如果使用了 --ram_model,则始终为 off。 |
节 12.4.33 |