我怎么知道ld使用的库的路径?

时间:2018-06-14 13:24:55

标签: linker clang llvm ld llvm-clang

说我正在使用clang构建和链接我的应用程序

clang -I/usr/local/include -c -o app.o main.c
clang -L/usr/local/lib -o app app.o -lfoo

我如何知道libfoo.alibfoo.dylib的位置?有冗长的模式吗?

可以手动搜索/usr/lib/usr/local/lib,但是当您使用多个库时,这样做会非常繁琐。

1 个答案:

答案 0 :(得分:1)

如果链接器是GNU ld,请通过linker option --trace,例如

clang -L/usr/local/lib -o app app.o -lfoo -Wl,--trace

如果链接器是Darwin mach-o ld,则通过linker option -t,例如

clang -L/usr/local/lib -o app app.o -lfoo -Wl,-t

然后,链接器将报告每个目标文件,存档(成员)或 加载的动态库。