Downloaded
- NSIS source from SVN at http://svn.code.sf.net/p/nsis/code/NSIS/trunk
- SCons 2.3.4 from http://scons.org
- Python 2.7.9 from http://python.org
- Zlib from SourceForge as described at http://nsis.sourceforge.net/Zlib
- Microsoft Visual C++ Toolkit 2003 from http://kael.civfanatics.net/files/VCToolkitSetup.exe
- WxWidgets 2.8.4 from http://prdownloads.sourceforge.net/w....8.4-Setup.exe
- C:\dev\NSIS
- C:\Python27
- C:\Python27\Lib\site-packages\scons-2.3.4
- C:\dev\zlib-1.2.8
Other
- Set ZLIB_WIN32=C:\dev\zlib-1.2.8
- Set VCToolkitInstallDir=C:\Program Files (x86)\Microsoft Visual C++ Toolkit 2003\
- Added C:\Python27\;C:\Python27\Scripts\;C:\Python27\Lib\site-packages\ to PATH
- Had existing installations of Visual Studio 2005, 2008, 2010, 2012, 2013, 2015 preview
- Had existing installations of Windows SDK
- Had existing installations of HTML Workshop
- Read http://nsis.sourceforge.net/Docs/AppendixG.html
- Read http://nsis.sourceforge.net/Development_Files
- Read http://nsis.sourceforge.net/Building_NSIS_from_SVN
I build it by cleaning the directory and then using a command line of scons. I tried this using various versions of Visual Studio. By default, it is 12.0. I set MSVS_VERSION to build with other versions.
The results:
- 6.0, 7.0, 7.1: "Couldn't find a good version of libcp.lib"
- 8.0, 9.0: "zlib (win32) is missing!"
- 10.0, 12.0: "error LNK2019: unresolved external symbol __hypot referenced in function _hypot" & "error LNK2001: unresolved external symbol __fltused"
I also built it with the "MSTOOLKIT=yes" with the same results. I pointed MSSDK to the SDK that matched MSVS_VERSION. I tried it with:
MSSDK=C:\Program Files\Microsoft SDKs\Windows\version
MSSDK=C:\Program Files (x86)\Microsoft SDKs\Windows\version
#1 I have not researched this error yet.
#2 I found a few posts about this, but none provided a solution. I've checked that zlib.h, zdll.lib and zlib1.lib are where they are expected.
#3 The unresolved __hypot is because of a change in the library starting with VS 2010. I suspect that __fltused is a similar problem.
I have tried this on a second computer with a similar setup. The results are the same.
Output #1
scons: Reading SConscript files ...
Delete("nsis-29-Mar-2015.cvs")
Delete(".instdist")
Delete(".test")
Using Microsoft tools configuration (7.1)
*** Couldn't find a good version of libcp.lib
Output #2
scons: Reading SConscript files ...
Delete("nsis-29-Mar-2015.cvs")
Delete(".instdist")
Delete(".test")
Using Microsoft tools configuration (9.0)
Checking for memset requirement... yes
Checking for memcpy requirement... yes
Checking for C library gdi32... no
Checking for C library user32... no
Checking for C library pthread... no
Checking for C library iconv... no
Checking for C library shlwapi... no
Checking for C library version... no
Checking for C library zdll... no
Checking for C library z... no
zlib (win32) is missing!
Output for #3
scons: Reading SConscript files ...
Delete("nsis-29-Mar-2015.cvs")
Delete(".instdist")
Delete(".test")
Using Microsoft tools configuration (12.0)
Checking for memset requirement... yes
Checking for memcpy requirement... no
Checking for C library gdi32... yes
Checking for C library user32... yes
Checking for C library pthread... no
Checking for C library iconv... no
Checking for C library shlwapi... yes
Checking for C library version... yes
Checking for C library zdll... yes
Checking for C library zdll... yes
Checking for C library zdll... yes
Checking for C library dl... no
Checking for C library gdi32... yes
Checking for C library iconv... no
Checking for C library pthread... no
Checking for C library user32... yes
Checking for C library version... yes
Checking for C library zdll... yes
Checking for C++ library cppunit... no
scons: done reading SConscript files.
scons: Building targets ...
Install file: "Contrib\ExDLL\pluginapi.h" as "build\urelease\api\nsis\pluginapi.h"
Install file: "Source\exehead\api.h" as "build\urelease\api\nsis\api.h"
Install file: "Contrib\ExDLL\nsis_tchar.h" as "build\urelease\api\nsis\nsis_tchar.h"
<lots of cl commands>
link /nologo /map /subsystem:windows,5.01 /entry:NSISWinMainNOCRT /NODEFAULTLIB /OUT:build\urelease\MakeLangId\MakeLangId.exe kernel32.lib user32.lib comctl32.lib build\urelease\MakeLangId\MakeLangId.obj build\urelease\MakeLangId\resource-rc.res build\urelease\MakeLangId\memset.obj
MakeLangId.obj : error LNK2019: unresolved external symbol __hypot referenced in function _hypot
MakeLangId.obj : error LNK2001: unresolved external symbol __fltused
build\urelease\MakeLangId\MakeLangId.exe : fatal error LNK1120: 2 unresolved externals
scons: building terminated because of errors.

