Linux:弱链接整个库,如OS X ld -weak-lfoo

时间:2016-05-19 03:08:21

标签: linux gcc shared-libraries ld

在OS X上,ld有一个方便的选项-weak-l,就像-l一样,但是库是“弱”的。如果在加载可执行文件时找不到lib,则在程序实际遇到无法找到的符号之前不会引发错误。

g++ -L. -weak-lfoo -o main.out main.cpp

Linux ld命令中是否存在等效功能?我找不到了。

我正试图避免这个错误:

./main.out: error while loading shared libraries: libfoo.so: cannot open shared object file: No such file or directory

...即使libfoo.so不可用。 (我碰巧知道 - 对于我的用例 - main.out将不会调用任何需要libfoo.so符号的函数。)

1 个答案:

答案 0 :(得分:1)

afaik,没有这样的事情。

Debian-devel mailinglist中至少有一些(2017-03-22)的讨论表明,这将是一个很好的功能(因此暗示它不存在)