vc++使用
分两个步骤
1.使用pexports或是微软自带的dumpbin导出dll的def文件,推荐使用pexports,可以直接导出不需要修改的def文件.
pexports下载地址
用法例子: pexports.exe libintl-8.dll > libintl-8.def
2.使用vc自带的lib程序,调用LIB /DEF:libintl-8.def /MACHINE:IX86即可
mingw使用的.a文件
1.使用pexports或是微软自带的dumpbin导出dll的def文件,推荐使用pexports,可以直接导出不需要修改的def文件.
2.使用mingw自带的dlltool工具来生成.a文件
dlltool -D sample.dll -d sample.def -l sample.lib
以上只能用于dll的接口是C接口形式, C++写的dll无法这样做, 由于C++编译器会把函数参数作为导出符号的一部分,且各种编译器实现的不同, 导致编译出来的dll无法做到二进制兼容。