我遇到GCC问题,我想以自定义方式使用-l
标志。
我想指定-lfoo
指定的对应libfoo的搜索路径,我也想覆盖GCC中的任何内部搜索路径,我不希望GCC使用任何可以解决的随机库这些符号,我只希望GCC在指定-l
时使用非常具体的库进行编译。
我知道有pkg-config
之类的工具,但我的问题更多是以gcc为中心的,因为我专注于对编译步骤有更多的控制。
答案 0 :(得分:1)
有一个未记录的语法,用于指定gcc的绝对lib路径:
$ gcc -o test test.c -l:/usr/lib/libfoo.so #(note the colon)
见这里:https://code.ros.org/lurker/message/20130119.001059.fad11362.de.html
更简单的方法是:
$ gcc -o test test.c /usr/lib/libfoo.so
实际上,使用-l:
语法的唯一原因是,如果搜索路径中存在相同名称的冲突库,则无法更改搜索路径。