-brtl
适用的调用
| 选项 | xlc (编译 C) | xlC (编译 C++) | xlclang(编译 C) | xlclang++(编译 C++) |
|---|---|---|---|---|
| -brtl | ✓ | ✓ | ✓ | ✓ |
注: 此表中仅列出典型调用。 对于所有基本调用及其等效特殊调用,您可以参阅 编译器调用的完整列表 。
类别
等效编译指示
无。
用途
为输出文件启用运行时链接。 将 -brtl 与 -l 选项一起使用时,链接程序会搜索后缀为 .so 和 .a 的库。 当同一目录中存在多个同名的库时,.so 优先于 .a。
运行时链接是指在程序执行已开始后,在共享模块中解析未定义和非延迟符号的能力。 它是一种提供运行时定义(这些函数定义在链接时不可用)和符号重新绑定功能的机制。 使用 -brtl 进行编译会将运行时链接器的引用添加到您的程序中,当程序开始执行时,它将由程序的启动代码 (/lib/crt0.o) 调用。 共享对象输入文件在程序加载器部分中列为依赖项,其顺序与在命令行中指定的顺序相同。 当程序开始执行时,系统加载器加载这些共享对象,以便运行时链接器可以使用它们的定义。
语法
使用量
必须构建主应用程序才能启用运行时链接。 系统装入器必须能够装入并解析主程序和被调用模块中引用的所有符号,否则程序将不执行。 有关如何在启用运行时链接的情况下将库链接到应用程序,请参阅 将库链接到应用程序。
DCE线程库和堆调试库与运行时链接不兼容。 -brtl 如果您使用 xlC_r4 或 xlc++_r4 调用编译器,或者指定了 -qheapdebug 编译器选项。
预定义的宏
无。
