ld 命令的有效使用
链接器(作为编译的最后阶段或直接由 ld 命令调用)具有典型 UNIX 链接器中没有的功能。
如果未利用操作系统绑定程序的更多能力,此情况可能会导致较长的链接时间。 本节描述了更有效地使用绑定程序的一些技巧。
示例
以下是例举有效使用 ld 命令的一个示例:
- 要预绑定一个库,请在压缩文档文件中使用以下命令:
# ld -r libfoo.a -o libfooa.o - FORTRAN 程序 something.f 的编译和绑定如下所示:
# xlf something.f libfooa.o请注意:预绑定库当作另一个普通的输入文件,不具有常用库识别语法(-lfoo)。
- 要在修复错误后重新编译模块和重新绑定可执行的程序,请使用以下语句:
# xlf something.f a.out - 然而,如果错误修复已经导致对库中不同子例程的调用,那么绑定会失败。 下列 Korn 外壳程序脚本测试故障返回码并加以恢复。
# !/usr/bin/ksh # Shell script for source file replacement bind # xlf something.f a.out rc=$? if [ "$rc" != 0 ] then echo "New function added ... using libfooa.o" xlf something.o libfooa.o fi