Re: Compiling xemacs with Visual Studio 2015 Community ('free') edition
[email protected] (Henry S. Thompson) Mon, 27 Jul 2015 13:31:18 +0100
| Newsgroups | gmane.emacs.xemacs.beta |
|---|---|
| Message-ID | <[email protected]> |
ht writes: > Sean MacLennan <[email protected]> writes: > >> On Sun, 26 Jul 2015 19:58:09 +0100 >> [email protected] (Henry S. Thompson) wrote: >>> Large numbers of _-prefixed fns are showing is unavailable, but I >>> can't see where they're coming from. >> >> Could you list a couple of the _-prefixed functions. Usually the >> problem is the other way around... they want _ functions instead of the >> normal functions. > > 1> bscmake -nologo -oC:\C64\usr\local\src\xemacs-21.5-upstream\src\temacs.bsc @C:\C64\usr\local\src\xemacs-21.5-upstream\nt\obj\bscmake.tmp > 1> del C:\C64\usr\local\src\xemacs-21.5-upstream\nt\obj\bscmake.tmp > 1> link.exe @C:\Users\ht\AppData\Local\Temp\nm5FE7.tmp > ... > 1>win32.obj: error LNK2001: unresolved external symbol _memcpy > ... > 1>text.obj: error LNK2001: unresolved external symbol __imp__wcslen > ... > 1>win32.obj: error LNK2001: unresolved external symbol _strcmp > > And so on -- dozens of symbols, most referenced from dozens of files. > Google/stackoverflow suggest this is something to do with the various > flavours of MSVCRT, but I'd expect VS to take care of that sort of > thing. . . OK, by creating a tiny test project and comparing its linking behaviour, I identified at least four fixable problems in xemacs.mak: 1) _strlen and friends are defined in a previously unused library ucrt(d).lib; 2) _memcpy and friends are defined in a previously unused library vcruntime(d).lib; 3) We don't have manifest files (yet), so the calls to mt -manifest... need to be conditionalized on their existence, i.e. by prefixing with @if exist [email protected] 4) Some of the extension libraries, compiled against older VS version(s), reference no-longer-supported symbols, so config.inc changed to avoid postgresql, png and tiff for the time being. Having made those changes, I can compile and get past all the earlier missing symbols, but alas Xpm.lib is _also_ stale, and required, so I'll have to stop and rebuild that before further progress. ht -- Henry S. Thompson, School of Informatics, University of Edinburgh 10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440 Fax: (44) 131 650-4587, e-mail: [email protected] URL: http://www.ltg.ed.ac.uk/~ht/ [mail from me _always_ has a .sig like this -- mail without it is forged spam]