-N
--omagic
将文本和数据部分设置为可读写。此外,不要对数据段进行页面对齐,并禁用链接到共享库。如果输出格式支持Unix样式幻数,请将输出标记为“OMAGIC”。注意:尽管PE-COFF目标允许使用可写文本部分,但它不符合Microsoft发布的格式规范。
--no-OMAGIC
该选项否定了-N选项的大部分影响。它将文本部分设置为只读,并强制数据段与页面对齐。注 - 此选项不启用链接到共享库。为此使用-Bdynamic。
-o 输出
--output = 输出
使用output作为ld生成的程序的名称; 如果未指定此选项,则默认使用名称a.out。脚本命令“OUTPUT”也可以指定输出文件名。
-O level
如果level是大于零的数值,则ld优化输出。这可能需要更长的时间,因此可能只应为最终的二进制文件启用。此选项仅影响ELF共享库生成。链接器的未来版本可能会更多地使用此选项。目前,此选项的不同非零值的链接器行为也没有区别。这可能会随着未来的版本而改变。
-q
--emit-relocs
将重定位部分和内容保留在完全链接的可执行文件中。后链接分析和优化工具可能需要此信息才能执行可执行文件的正确修改。这导致更大的可执行文件。
目前仅在ELF平台上支持此选项。
--force-dynamic
强制输出文件具有动态部分。此选项特定于VxWorks目标。
-r
--relocatable
生成可重定位输出---即生成一个输出文件,该输出文件又可以作为ld的输入。这通常称为部分链接。作为副作用,在支持标准Unix幻数的环境中,此选项还将输出文件的幻数设置为“OMAGIC”。如果未指定此选项,则会生成绝对文件。链接C ++程序时,此选项不会解析对构造函数的引用; 要做到这一点,请使用-Ur。
如果输入文件的格式与输出文件的格式不同,则仅当该输入文件不包含任何重定位时,才支持部分链接。不同的输出格式会有进一步的限制; 例如,一些基于“a.out”的格式根本不支持与其他格式的输入文件的部分链接。
此选项与