- 論壇徽章:
- 0
|
回復(fù) 5# MMMIX
哎呀,我昨天凌晨3點(diǎn)睡的,終于出來(lái)了。分享一下經(jīng)驗(yàn):
在
lib_LTLIBRARIES = libxxx.la
libxxx_la_LDFLAGS = -no-undefined -avoid-version -Wl,--output-def,libxxx.def
這一步(當(dāng)然之前你要先判斷是不是mingw,用AM_CONDITIONAL提供條件),生成la、dll的同時(shí)也生成def
其中
-no-undefined 必須寫(xiě),不寫(xiě),libtool就不做dll (太坑了。
即便做出來(lái)dll,libtool也不生成lib(這個(gè)import-lib供MSVC使用,當(dāng)然MSVC有l(wèi)ib工具可以自己搞,但同時(shí)生成出來(lái)更方便),要自己繼續(xù)搞。
需要在Makefile.am里加上這樣的代碼
deflibdir=$(libdir)
deflib_DATA = libxxx.def libxxx.lib
libxxx.lib: libxxx.def
$(DLLTOOL) --dllname libxxx.dll --input-def $< --output-lib $@
|
|