autotools and -Wl,-whole-archive

autotools and -Wl,-whole-archive

本文关键字:-whole-archive -Wl and autotools      更新时间:2023-10-16

是否可以告诉自动工具使用-wl,-whole-archive标志链接其中一个库?

Makefile.am

bin_PROGRAMS = pktanon 
pktanon_SOURCES = main.cpp
pktanon_DEPENDENCIES = $(lib_LIBRARIES)
pktanon_LDADD = libpktanon.a $(LDADD) 

我需要将libpktanon.a与-wl,-whole-archive标志链接,我也想执行这样的事情:

g++ -o pktanon main.o -Wl,-whole-archive libpktanon.a -Wl,-no-whole-archive -l...

(如本问题)

我在这里遇到了类似的问题。您可以这样做:

pktanon_LDFLAGS = -Wl,--whole-archive,libpktanon.a,--no-whole-archive

问题是 Libtool 不能保证它执行的实际命令行上链接器标志的顺序,所以你必须像这样强制它。