-l
适用的调用
选项 | xlc (编译 C) | xlC (编译 C++) | xlclang(编译 C) | xlclang++(编译 C++) |
---|---|---|---|---|
-l | ✓ | ✓ | ✓ | ✓ |
注: 此表中仅列出典型调用。 对于所有基本调用及其等效特殊调用,您可以参阅 编译器调用的完整列表 。
类别
等效编译指示
无。
用途
搜索指定的库文件。 对于静态链接和动态链接,链接程序会搜索 libkey.a。 对于使用 -brtl 选项进行的运行时链接,如果找不到 libkey.so ,那么链接程序将搜索 libkey.so,然后搜索 libkey.a 。
语法
缺省值
编译器缺省值是仅搜索某些编译器运行时库。 缺省配置文件使用 -l 编译器选项指定要搜索的默认库名称,以及使用 -L 编译器选项指定库的缺省搜索路径。
将自动添加 C 和 C++ 运行时库。
参数
- key
- 库的名称减去
lib
和 .a 或 .so 字符。
使用量
您还必须为不在缺省搜索路径中的库提供其他搜索路径信息。 可以使用 -L 或 -Z 选项来修改搜索路径。 请参阅 -B, -brtl和 -b ,以获取有关指定要搜索的库类型 (用于静态或动态链接) 的信息。
-l 选项是累积的。 命令行上 -l 选项的后续外观不会替换但会添加到先前出现的 -l所指定的库列表。 将按照库在命令行上的显示顺序来搜索这些库,因此您指定库的顺序可能会影响应用程序中的符号解析。
有关更多信息,请参阅适用于您操作系统的 ld 文档。
预定义的宏
无。
示例
要编译
myprogram.c
并将其与 /usr/mylibdir
目录中的库 libmylibrary.a
链接,请输入以下命令:xlc myprogram.c -lmylibrary -L/usr/mylibdir
假定
libmyrtlibrary.so
库已通过 -G 选项进行编译以进行运行时链接,并且位于 /usr/mylibdir
目录中。 要编译 myrtprogram.c
并将其与库 libmyrtlibrary.so
链接,请输入以下命令:xlc -brtl myrtprogram.c -lmyrtlibrary -L/usr/mylibdir