Winamp & Shoutcast Forums Problems building NSIS

 28th November 2015, 00:19 #41 MyPC8MyBrain Member   Join Date: Nov 2015 Posts: 96 sorry about that; i forgot to add toolkit switch to scons, here the proper readout PHP Code:  scons: Reading SConscript files ... Mkdir("build\urelease\config") Delete("nsis-28-Nov-2015.cvs") Delete(".instdist") Delete(".test") Using Microsoft tools configuration (7.1) Checking for memset requirement... no 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.   PHP Code:  C:\Program Files\Microsoft Visual C++ Toolkit 2003>cl Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 13.10.3077 for 80x86 Copyright (C) Microsoft Corporation 1984-2002. All rights reserved. usage: cl [ option... ] filename... [ /link linkoption... ]  
 28th November 2015, 07:29 #42 MyPC8MyBrain Member   Join Date: Nov 2015 Posts: 96 What a painful process to get this to work, Ive had enough trying to get this to compile on my XP, I think something else is not right with it, I uninstalled my VS2012 on my Win7, reinstalled VS2015, I was finally able to compile this successfully VER_MAJOR=3 VER_MINOR=0 SKIPUTILS="NSIS Menu"PREFIX="D:\dev\nsis\myNSIS" install Next I was trying to compile this VER_MAJOR=3 VER_MINOR=0 PREFIX="D:\dev\nsis\myNSIS" install Got few errors I was able to fix with these instructions, https://forums.wxwidgets.org/viewtop...=40491#p163676 solved the errors I hit initially; and moved on to new ones I can’t figure out how to get out of, first error comes up PHP Code:  scons: done reading SConscript files. scons: Building targets ... cl "/Fobuild\urelease\NSIS Menu\nsismenu\nsismenu.obj" /c "Contrib\NSIS Menu\nsismenu\nsismenu.cpp" /TP /nologo /GS- /O1 /W3 /MT /EHsc /D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_WARNINGS /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NON_CONFORMING_SWPRINTFS /DNSISCALL=__stdcall /D_UNICODE /DUNICODE /Ibuild\ure lease\config /ID:\dev\wxWidgets\include /ID:\dev\wxWidgets\lib\vc_libunsis\mswu nsismenu.cpp D:\dev\wxWidgets\include\wx/platform.h(183): fatal error C1083: Cannot open include file: 'wx/setup.h': No such file or directory scons: *** [build\urelease\NSIS Menu\nsismenu\nsismenu.obj] Error 2 scons: building terminated because of errors.   then I went through prepping NSIS menu with wxbuild.bat in nsis-code-6644-NSIS-trunk\Contrib\NSIS Menu\wx\ I have no idea how to answer the questions; I just answered yes to all; run a new build; old error is gone now and a new one came about, PHP Code:  scons: done reading SConscript files. scons: Building targets ... cl "/Fobuild\urelease\NSIS Menu\nsismenu\nsismenu.obj" /c "Contrib\NSIS Menu\nsismenu\nsismenu.cpp" /TP /nologo /GS- /O1 /W3 /MT /EHsc /D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_WARNINGS /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NON_CONFORMING_SWPRINTFS /DNSISCALL=__stdcall /D_UNICODE /DUNICODE /Ibuild\ure lease\config /IC:\wxWidgets-3.0.2\include /IC:\wxWidgets-3.0.2\lib\vc_libunsis\mswu nsismenu.cpp C:\wxWidgets-3.0.2\include\wx/chkconf.h(88): fatal error C1189: #error:  "wxUSE_ANY must be defined, please read comment near the top of this file." scons: *** [build\urelease\NSIS Menu\nsismenu\nsismenu.obj] Error 2 scons: building terminated because of errors.   Been chasing my tail with this few hours now, any advice how to get over this error? it seems to be wxWidgets related; everything else works fine so far,
 28th November 2015, 09:17 #43 Anders Moderator     Join Date: Jun 2002 Location: ${NSISDIR} Posts: 5,358 Yes, it is going to be difficult when you can't follow basic directions. The building NSIS part of the documentation tells you to use wxWidgets v2.8. If VS2015 cannot handle that version then you might need to tinker with v3 to make it work and perhaps submit a patch... IntOp$PostCount $PostCount + 1  28th November 2015, 16:06 #44 MyPC8MyBrain Member Join Date: Nov 2015 Posts: 96 don't get me wrong Andres, i have followed your instruction to the T on my XP box, i think i have other unrelated issues going on there; ill keep trying to get VS2015 to play nice with wxWidgets v3 i have reverted to v2.8 on my Win7 test install; the error went away but a new one came instead; ill keep digging, 28th November 2015, 20:51 #45 Anders Moderator Join Date: Jun 2002 Location:${NSISDIR}
Posts: 5,358
Quote:
 Originally Posted by MyPC8MyBrain don't get me wrong Andres, i have followed your instruction to the T on my XP box, i think i have other unrelated issues going on there;
I made a small change for 2003 TK, you can retry on XP with r6646.

IntOp $PostCount$PostCount + 1

 28th November 2015, 20:53 #46 Anders Moderator     Join Date: Jun 2002 Location: ${NSISDIR} Posts: 5,358 Building NSIS with the free VC 2003 Toolkit on a clean Windows XP SP0 install Follow my guide for Win2000 Download MASM. (You only need ML.EXE and ML.ERR)If you have a valid Visual Studio license you can grab MASM from the VS6 processor pack. Otherwise you can grab it from the 95, 98 or NT 3.5 DDK or install VS 2005 express and grab MASM from here Download and install wxWidgets: https://github.com/wxWidgets/wxWidge...8.12-Setup.exe Build the wxWidgets NSIS bits:Open a new Platform SDK Windows 2000 build environment console and run: PHP Code:  "%VCToolkitInstallDir%\vcvars32.bat"&REM Make sure it finds 2003 TK set PATH=%PATH%;C:\Program Files\Microsoft SDK\Bin\Win64&REM Fix 2003Feb SDK set WXWIN=C:\wxWidgets-2.8.12&REM cd "c:\NSIS\trunk\Contrib\NSIS Menu\wx\" wxbuild.bat&REM Just answer yes to everything pause&exit  We are now ready to build everything. Open a new Platform SDK Windows 2000 build environment console and run: PHP Code:  cd c:\NSIS\trunk set PATH=%PATH%;C:\Program Files\HTML Help Workshop&REM set ZLIB_W32=C:\NSIS\dep\zlib&REM set WXWIN=C:\wxWidgets-2.8.12&REM C:\Python27\Scripts\scons.bat MSTOOLKIT=yes PATH=c:\MASM VER_MAJOR=3 VER_MINOR=0 dist-installer  Doing it this way is complicated and is only required if you want to distribute a custom NSIS build, I would recommend just skip building the NSIS menu like I did in my other guide. IntOp$PostCount $PostCount + 1 28th November 2015, 21:07 #47 MyPC8MyBrain Member Join Date: Nov 2015 Posts: 96 Thank you Andres, ill give this another go on my XP, on my other W7 machine spent the time to updated Setup.h template to latest wxWidgets v3 Setup0.h im about to give it a test soon; im not sure all the settings i used are correct though; my updated Setup.h attached if you want to take a look, (these changes are required to run with v3 & VS2012 and up) im off to test XP again ATB Chris Attached Files  setup.h (54.6 KB, 423 views)  28th November 2015, 22:22 #48 MyPC8MyBrain Member Join Date: Nov 2015 Posts: 96 thank you very much Andres, totally WORKED, no errors no issues! release build completed with all options! WOW this is the first time i saw the menu's build; i know then it will work, i think MASM didn't work right in all my attempts (i had it installed just not in path!) i noticed it on my W7 after i added a pause to the batch; (MASM installer -> http://www.masm32.com/masmdl.htm) i added it to path prior but i didn't get any results; i was just too frustrated from failing attempts; everything was just a mess before that, i uninstalled; reinstalled as instructed; only this time i actually used the win2000 command window! in previous attempts; i cant explain why; i saw the 2000 link instructions; i was convinced you had this posted before for W2000 and never changed the instructions as i was going through my program menu; i first saw the Microsoft Visual C++ Toolkit 2003 folder; inside i saw the command shortcut; which i dragged to my desktop and used it throughout, my mind made the association from the 2003 TK i installed just before that, i never realized i was in the wrong environment all along, (yes i know... ) Thank you both Jason and Andres for your time and patience; much appreciated ATB Chris 28th November 2015, 22:36 #49 MyPC8MyBrain Member Join Date: Nov 2015 Posts: 96 Quote:  Originally Posted by Anders C:\Python27\Scripts\scons.bat MSTOOLKIT=yes PATH=c:\MASM VER_MAJOR=3 VER_MINOR=0 dist-installer PREFIX="c:\MASM"? 28th November 2015, 23:56 #50 Anders Moderator Join Date: Jun 2002 Location:${NSISDIR}
Posts: 5,358
Quote:
 Originally Posted by MyPC8MyBrain PREFIX="c:\MASM"?
No.

When using the install command then the compiler is installed to PREFIX.

I'm doing a dist-install here and that builds the installer that we distribute, PREFIX is not used.

PATH just adds to %PATH% in the SCons environment and I had to tell SCons where to find MASM.

IntOp $PostCount$PostCount + 1

 29th November 2015, 00:07 #51 MyPC8MyBrain Member   Join Date: Nov 2015 Posts: 96 strange, i didn't change the link you posted; yet everything worked! only my masm is here C:\masm32
 29th November 2015, 02:43 #52 JasonFriday13 Major Dude     Join Date: May 2005 Location: New Zealand Posts: 907 Just on a side note, NSIS Menu still compiles fully without warnings using wxW 3.0 on ubuntu 14.04, same goes for my zip2exe port. "Only a MouseHelmet will save you from a MouseTrap" -Jason Ross (Me) NSIS 3 POSIX Ninja Wiki Profile
29th November 2015, 11:52   #53
JasonFriday13
Major Dude

Join Date: May 2005
Location: New Zealand
Posts: 907
Quote:
 Originally Posted by JasonFriday13 Just on a side note, NSIS Menu still compiles fully without warnings using wxW 3.0 on ubuntu 14.04, same goes for my zip2exe port.
Got a bit ahead of myself, zip2exe (wxW 3.0) is throwing runtime assert failures due to an undefined unicode character (which I already knew about).

"Only a MouseHelmet will save you from a MouseTrap" -Jason Ross (Me)
NSIS 3 POSIX Ninja
Wiki Profile

 29th November 2015, 12:05 #54 MyPC8MyBrain Member   Join Date: Nov 2015 Posts: 96 thank you for the HU Jason, i was wondering about that
 30th November 2015, 10:03 #55 MyPC8MyBrain Member   Join Date: Nov 2015 Posts: 96 followed the same implementation that worked for my XP on my win8.1, VSToolKit03, Scons 1.21, xW 2.8, Python 2.7, no other VS installed, MASM32 didn't like my Win8.1; since its portable i moved the one that built OK on my XP to Win8.1 C root, build menu part went perfect; then building NSIS itself im getting this annoying error System.dll: unable to find assembler for Call.S with script later failing with link 119 120 any ideas how to fix this? TIA, Chris
30th November 2015, 10:07   #56
Anders
Moderator

Join Date: Jun 2002
Location: ${NSISDIR} Posts: 5,358 Quote:  Originally Posted by MyPC8MyBrain build menu part went perfect; then building NSIS itself im getting this annoying error System.dll: unable to find assembler for Call.S with script later failing with link 119 120 any ideas how to fix this? Use scons PATH=c:\path\to\masm ... IntOp$PostCount \$PostCount + 1

 30th November 2015, 10:22 #57 MyPC8MyBrain Member   Join Date: Nov 2015 Posts: 96 Thank you Andres, i have been applying path for masm C:\Python27\Scripts\scons.bat MSTOOLKIT=yes PATH=C:\MASM VER_MAJOR=3 VER_MINOR=0 dist-installer TIA, Chris
 30th November 2015, 13:22 #58 JasonFriday13 Major Dude     Join Date: May 2005 Location: New Zealand Posts: 907 Is the filename for masm the same as the one on the xp box? "Only a MouseHelmet will save you from a MouseTrap" -Jason Ross (Me) NSIS 3 POSIX Ninja Wiki Profile
 30th November 2015, 13:29 #59 MyPC8MyBrain Member   Join Date: Nov 2015 Posts: 96 yes, i tried maybe the folder name needs to be MASM or MASM32 neither worked; on my XP it is named MASM32 on my win8 it is sitting in C:\MASM32 the only rename i did was to the folder itself no files were renamed inside, i run C:\Python27\Scripts\scons.bat MSTOOLKIT=yes PATH=C:\MASM32 VER_MAJOR=3 VER_MINOR=0 dist-installer same results
 1st December 2015, 11:59 #60 JasonFriday13 Major Dude     Join Date: May 2005 Location: New Zealand Posts: 907 How old is the masm version? Try finding one that is 32 bit, because old 16 bit programs don't work on 64 bit Windows. "Only a MouseHelmet will save you from a MouseTrap" -Jason Ross (Me) NSIS 3 POSIX Ninja Wiki Profile
 1st December 2015, 13:45 #61 MyPC8MyBrain Member   Join Date: Nov 2015 Posts: 96 MASM32 installer claims v11r, not sure in reference to what though, i tried NASM as alternative only to get a heap of other issues; i could barely handle the basic troubleshooting; let alone introducing an unknown application in the mix, also too scared Andres will yell at me ATB Chris
 1st December 2015, 15:01 #62 JasonFriday13 Major Dude     Join Date: May 2005 Location: New Zealand Posts: 907 That version is new enough, it should work fine. This sounds like an environment path issue, scons obviously can't find a compiler for the assembly file for system.dll. Just out of curiosity, try using VS2005 Express Edition instead of the 2003SDK, MSToolKit, and MASM. Do you absolutely need Windows 95/98/ME compatibility? This is generally for two reasons: using an old toolchain to get said compatibility; and for testing/debugging. I use VS2008 as it's a nice compromise between compatibility and newness; and install size/time. I think that VS2010 onwards is just bloat, although the code editor in VS2012 is pretty cool. "Only a MouseHelmet will save you from a MouseTrap" -Jason Ross (Me) NSIS 3 POSIX Ninja Wiki Profile
 Winamp & Shoutcast Forums Problems building NSIS