有些时候在只有一个dll的情况下,如果需要隐式链接的话,就需要为该dll产生一个导入库.注意导入库是不能跨编译器使用的,在mingw中导入库需要以.a结尾,而vs则以.lib
以下的方法是在Msys产生mingw及vs 的导入库 ,
打开MSys工具
首先生成dll库的def文件
1.mingw
$ pexports filename.dll > filename.def
2.visual studio
C:> dumpbin /EXPORTS filename.dll > filename.def
pexports的下载地址是:http://www.emmestech.com/software/pexports-0.43/download_pexports.html
接着生成dll的导入库文件
1.mingw
$ dlltool -d filename.dll -d filename.def -l filename.lib
或者
$ dlltool -d filename.dll -d filename.def -l libfilename.a
2.visual studio
lib /machine:i386 /def:filename.def