On 4 November 2013 08:48, bulk88 via RT <perlbug-followup@perl.org> wrote: > On Sun Nov 03 13:55:54 2013, shay wrote: >> c:\dev\git\perl\perl.h(628) : fatal error C1083: Cannot open include >> file: 'stda >> rg.h': No such file or directory >> NMAKE : fatal error U1077: 'clarm.exe' : return code '0x2' >> Stop. >> >> The file stdarg.h does exist in "C:\Dev\Git\perl\win32>dir "C:\Program >> Files (x86)\Windows CE Tools\wce400\STANDARDSDK\Include\Armv4" so I >> appended that path to the INCLUDE environment variable and ran "nmake >> -f Makefile.ce" again. >> >> This time there was no complaint about the stdarg.h header file being >> missing, but the compilation of av.c still failed, now with syntax [...] > A failure I made > -------------------------------------------------------------- > clarm.exe -c -nologo -GF -W3 -I.\include -I. -I.. -DWIN32 -D_CONSOLE -DN > O_STRICT -D_WINDOWS -D_WIN32_WCE=400 -DUNDER_CE=400 -D ARM -D arm -D _ARM_ -D > _arm_ -DPROCESSOR_ARM -D _MT -D _DLL -DPALM_SIZE -DPOCKET_SIZE -I C:\sources\c > elib-palm-3.0\inc -D PERL -Zi -O1 -DPERLDLL -DPERL_CORE -D_WINDOWS -D_WIN32_ > WCE=400 -DUNDER_CE=400 -D ARM -D arm -D _ARM_ -D _arm_ -DPROCESSOR_ARM -D _MT > -D _DLL -DPALM_SIZE -DPOCKET_SIZE -I C:\sources\celib-palm-3.0\inc -D PERL -Zi > -O1 -DUSE_CROSS_COMPILE -DUSE_PERLIO -DPERL_EXTERNAL_GLOB -Fowince-arm-pocket-wc > e400\dll\ ..\av.c > av.c > c:\perl519\src\perl.h(628) : fatal error C1083: Cannot open include file: 'stdar > g.h': No such file or directory > NMAKE : fatal error U1077: 'clarm.exe' : return code '0x2' > Stop. > > C:\perl519\src\win32> > -------------------------------------------------------------- > diagnosis: INCLUDE env var isn't correct > > WCEARMV4.bat, after editing the .bat, start new console, run WCEARMV4.bat, should leave a working INCLUDE, without having to run "set INCLUDE=_______". I am adding sanity checks in #120452 to deal with your issues so the missing dirs/broken .bats are more obvious. I'm not sure why you did the "set INCLUDE=" unless the .bat was still broken or wasn't rerun in a new console. > I edited the .bat as per step 6 in your instructions and ran it in a new command prompt (step 7), but the INCLUDE that it set up was wrong. I just added the correct path to the INCLUDE environment variable in that command prompt. The INCLUDE path was set wrongly because PLATFORM was already set so did not pick up the default setting of STANDARDSDK in the .bat file: if "%OSVERSION%"=="" set OSVERSION=WCE400 if "%PLATFORM%"=="" set PLATFORM=STANDARDSDK if "%SDKROOT%"=="" set SDKROOT=C:\Program Files (x86)\Windows CE Tools set INCLUDE=%SDKROOT%\%OSVERSION%\%PLATFORM%\include\ARMV4;... This is intended to set the correct path of C:\Program Files (x86)\Windows CE Tools\wce400\STANDARDSDK\Include\Armv4 but instead it actually sets the non-existent C:\Program Files (x86)\Windows CE Tools\wce400\HPD\Include\Armv4 because my machine has PLATFORM already set to HPD. (It's in the System environment variables stored in the registry on my machine. I have no idea if it has always been that way since I bought it (pre-installed Windows 7 running on an HP desktop PC) or if something that I've installed since did that.) I will change the .bat file to explicitly set PLATFORM=STANDARDSDK, even if PLATFORM is already set.Thread Previous | Thread Next