ZHCUAQ1G June 2015 – August 2025
以下各表列出了链接器选项。有关这些选项的详细信息,请参阅本文档的Chapter6以及 TMS320C6000 汇编语言工具用户指南。
| 选项 | 别名 | 说明 |
|---|---|---|
| --run_linker | -z | 启用链接。 |
| --output_file=file | -o | 为可执行输出文件命名。默认文件名为 .out file。 |
| --map_file=file | -m | 生成输入和输出段(包括空位)的映射或列表,并将列表放置在 file 中。 |
| --stack_size=size | [-]-stack | 将 C 系统栈大小设为 size 字节,并定义全局符号来指定栈大小。默认值 = 1K 字节。 |
| --heap_size=size | [-]-heap | 将堆大小(对于 C 中的动态内存分配)设为 size 字节,并定义全局符号来指定栈大小。默认值 = 1K 字节。 |
| 选项 | 别名 | 说明 |
|---|---|---|
| --library=file | -l | 将存档库或链接命令 file 命名为链接器输入。 |
| --disable_auto_rts | 禁止自动选择运行时支持库。请参阅 节 6.3.1.1。 | |
| --priority | -priority | 满足由包含该符号定义的第一个库实现的未解析引用。 |
| --reread_libs | -x | 强制重新读取库,以解析反向引用。 |
| --search_path=pathname | -I |
在查找默认位置之前,更改库搜索算法以查找用 pathname 命名的目录。此选项必须出现在 --library 选项之前。 |
| 选项 | 别名 | 说明 |
|---|---|---|
| --define=name=value | 将 name 预定义为预处理器宏。 | |
| --undefine=name | 删除预处理器宏 name。 | |
| --disable_pp | 禁用命令文件预处理。 |
| 选项 | 别名 | 说明 |
|---|---|---|
| --diag_error=num | 将由 num 标识的诊断分类为错误。 | |
| --diag_remark=num | 将由 num 标识的诊断分类为备注。 | |
| --diag_suppress=num | 抑制由 num 标识的诊断。 | |
| --diag_warning=num | 将由 num 标识的诊断分类为警告。 | |
| --display_error_number | 显示诊断的标识符及其文本。 | |
| --emit_references:file[=file] | 发出包含段信息的文件。这些信息包括段大小、定义的符号和对符号的引用。 | |
| --emit_warnings_as_errors | -pdew | 将警告视为错误。 |
| --issue_remarks | 发出备注(非严重警告)。 | |
| --no_demangle | 禁止解码诊断消息中的符号名称。 | |
| --no_warnings | 抑制诊断警告(仍会发出错误)。 | |
| --set_error_limit=count | 将错误限制设置为 count。在达到此错误数量后,链接器将放弃链接。(默认为 100。) | |
| --verbose_diagnostics | 提供详细的诊断消息,以自动换行的方式显示原始源代码。 | |
| --warn_sections | -w | 创建未定义的输出段时显示一条消息。 |
| 选项 | 别名 | 说明 |
|---|---|---|
| --absolute_exe | -a | 生成绝对可执行目标文件。这是默认设置;如果 --absolute_exe 和 --relocatable 均未指定,链接器的行为就像指定了 --absolute_exe 一样。 |
| --ecc={ on | off } | 启用由链接器生成的错误校正码 (ECC)。默认关闭。 | |
| --ecc:data_error | 将指定的错误注入到输出文件中进行测试。 | |
| --ecc:ecc_error | 将指定的错误注入到错误校正码 (ECC) 中进行测试。 | |
| --mapfile_contents=attribute | 控制映射文件中包含的信息。 | |
| --relocatable | -r | 成不可执行的、可重定位输出目标文件。 |
| --xml_link_info=file | 生成结构良好的 XML file,其中包含有关链接结果的详细信息。 |
| 选项 | 别名 | 说明 |
|---|---|---|
| --entry_point=symbol | -e | 定义一个全局符号,用于指定可执行目标文件的主要入口点。 |
| --globalize=pattern | 将与 pattern 匹配的符号的符号链接更改为全局型。 | |
| --hide=pattern | 隐藏与指定 pattern 匹配的符号。 | |
| --localize=pattern | 将与指定 pattern 匹配的符号设为局部型。 | |
| --make_global=symbol | -g | 将 symbol 设为全局型(覆盖 -h)。 |
| --make_static | -h | 将所有全局符号设为静态型。 |
| --no_symtable | -s | 从可执行目标文件中去除符号表信息和行号条目。 |
| --retain={symbol| section specification} |
指定要由链接器保存的符号或段。 | |
| --scan_libraries | -scanlibs | 扫描所有库中的重复符号定义。 |
| --symbol_map=refname=defname | 指定符号映射;对 refname 符号的引用被替换为对 defname 符号的引用。 | |
| --undef_sym=symbol | -u | 将 symbol 作为未解析符号添加到符号表中。 |
| --unhide=pattern | 排除与指定 pattern 匹配的符号,使其不被隐藏。 | |
| 选项 | 别名 | 说明 |
|---|---|---|
| --arg_size=size | --args | 为 argc/argv 存储器区域保存 size 个字节。 |
| --cinit_compression[=type] | 指定应用于 C 自动初始化数据的压缩类型。默认为 rle。 | |
| --copy_compression[=type] | 压缩由链接器复制表复制的数据。默认为 rle。 | |
| --fill_value=value | -f | 为输出段中的空穴设置默认填充值 |
| --multithread | 使 TI 链接器在自动选择 RTS 库或解析对 libc.a 的引用时选择线程安全版 RTS 库,即使所有输入目标文件都不包含由 --multithread 编译器选项放置的 TI 构建属性,也是如此。 | |
| --ram_model | -cr | 在加载时初始化变量。有关详细信息,请参阅节 6.3.4。 |
| --rom_model | -c | 在运行时自动初始化变量。有关详细信息,请参阅节 6.3.4。 |
| --trampolines[=off|on] | 生成 far call trampolines。默认为 on。 |
| 选项 | 别名 | 说明 |
|---|---|---|
| --compress_dwarf[=off|on] | 大力减少输入目标文件中 DWARF 信息的大小。默认为 on。 | |
| --linker_help | [-]-help | 显示有关语法和可用选项的信息。 |
| --minimize_trampolines[=off| postorder] |
放置段以更大限度减少所需的 far trampolines 数量。默认值为 postorder。 | |
| --preferred_order=function | 为函数放置设定优先级。 | |
| --trampoline_min_spacing=size | 当 trampoline 预留的间隔比指定的限值更近时,尝试使它们相邻。 | |
| --unused_section_elimination[=off|on] | 消除可执行模块中不需要的段。默认为 on。 | |
| --zero_init=[off|on] | 控制对未初始化的变量的预初始化。默认为 on。如果使用了 --ram_model,则始终为 off。 |