假如你有从源文件编译好的静态库lib,你希望从这个lib生成对应的dll,你需要一个def文件里面定义导出的符号,这些符号的定义在那个静态库里,你要生成dll了,可以用VC的link命令在命令行下编译得到,首先要运行一下vcvars32.bat以初始话编译环境。然后用类似于下面的命令:
link /out:xxxx.dll /implib:xxxx.lib /dll /nologo /machine:I386 libxxxx.lib /subsystem:console /def:xxxx.def
注:libxxxx..lib是一个静态库,链接后产生xxxx.dll和导入库xxxx.lib
如果直接在cmd下,没有调用vcvars32.bat脚本,则需要使用/nodedefault:xxx.lib,将dll依赖的系统lib文件添加到命令行中

本文介绍如何通过已有的静态库生成对应的DLL文件。首先需要准备一个def文件来定义要导出的符号,然后使用VC的link命令进行编译。文中还提到了初始化编译环境的方法及如何处理未调用vcvars32.bat脚本的情况。
1915

被折叠的 条评论
为什么被折叠?



