2016-05-19 66 views
1

在OS X上,ld有一個方便的選項-weak-l,它與-l類似,但該庫「弱連接」。如果在加載可執行文件時找不到lib,則在程序實際遇到無法找到的符號之前不會發出錯誤。Linux:弱鏈接整個庫,如OS X ld -weak-lfoo

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

afaik,沒有這樣的事情。

至少在Debian-devel mailinglist最近的一些(2017-03-22)討論表明這將是一個很好的功能(因此暗示它不存在)