Martin Storsjö wrote:
In the meantime, when you create your regular import library with an option like -Wl,--out-implib,libfoo.dll.a, add the option -Wl,--output-def,foo.def. After that, run "dlltool -d foo.def -l libfoo.dll.a". This recreates the import library in a form that works better with MS link.exe.
Thanks a lot. Maybe I have to add '--kill-at' too? These are my steps: gcc -o ../bin/liquid32.dll -shared -m32 \ -static-libgcc \ -Wl,--out-implib,../liquid32.dll.a \ -Wl,--output-def,MinGW_obj32/liquid32.def \ MinGW_obj32/libliquid.o ... And: dlltool --input-def MinGW_obj32/liquid32.def --dllname liquid32.dll \ --output-lib ../liquid32_imp.lib --kill-at --machine i386 But now I get tons of warnings from 'link.exe'. Like: Loaded liquid32_imp.lib(dolms02750.o) module 'liquid32_imp.lib(dolms02750.o)' unsafe for SAFESEH image. and lots of these: liquid32_imp.lib(dolms00002.o) : error LNK2001: unresolved external symbol __head____liquid32_imp_lib What's these '__head____*' symbols? For reference my dlltool has version (GNU Binutils) 2.36.1 -- --gv _______________________________________________ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public