2012/12/9 Václav Šmilauer <e...@doxos.eu>: > Hi, > > I understand gendef generates symbols from non-mingw DLLs so that linker > knows which symbols are defined.
This feature is already in ld. And this feature of ld shows also why .def files are to be preferred. 1.) A .def file can be used to generate an import-library without the need of having *its* corresponding DLL-fille also on the system. 2.) Think about 64-bit Windows OSes, where ld either is able to see 32-bit or 64-bit system-dlls, as it is either a 32-bit or a 64-bit process. 3.) By a .def file you can generate easily also delayed-import-libraries. 4.) By a .def file you have the ability to mark explicit addtional symobol-properties, like DATA etc. You can't get this information always correct by the DLL itself. There are more advantages of .def files over the direct use of DLL files. > What is the reason to have gendef, instead of making the linker understand > the PE(+) formats so that it can read exported symbols from the DLL > directly, at link time? Technical reasons? Lack of manpower? Historical? And this aren't historical reasons. See above. The use of .def files has simply none-avoidable technical causes. > Would it make sense to package gendef with the compiler, just like e.g. > dlltool? Hmm, it is release by us - mingw-w64 - as a standalong tool (we have more like that, but well the use of gendef is wider spreaded). I am working also on binutils - what you might mean by "package ... with the compiler", and well, gendef has no equivalence to an MS-tool, so I don't think it makes sense to add it there. As far as I know is gendef provided by us as cygwin-package - available through cygwin's setup - and Ruben provides it - IIRC - within his personal-build, too. > Cheers, Vaclav Hope I could answer your questions. Regards, Kai ------------------------------------------------------------------------------ LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d _______________________________________________ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public