Building PHP 5.2.8 under WIndows XP

From: Date: Thu, 29 Jan 2009 22:17:51 +0000
Subject: Building PHP 5.2.8 under WIndows XP
Groups: php.internals.win 
Request: Send a blank email to internals-win+get-382@lists.php.net to get a copy of this message
Hello all. I originally posted this to the general PHP internals list. At Pierre's suggestion, I am following up here. Note that this post has a correction from the original post: I misstated the SDK version in the original post.   I am trying to build PHP 5.3.8 under Windows XP SP3.   I’m using Microsoft Visual Studio V6, SP6 as specified here: http://wiki.php.net/internals/windows/compiler.   I have installed the Windows Server Platform SDK as specified here: http://wiki.php.net/internals/windows/windowssdk and downloaded from here: http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm.   I have downloaded the binary tools from http://pecl2.php.net/downloads/php-windows-builds/php-libs/binary-tools.zip as specified here: http://wiki.php.net/internals/windows/stepbystepbuild.   I have a directory tree thus: - C:\PhpDev\   - php-5.2.8\     - (PHP 5.2.8 source tree from http://us2.php.net/get/php-5.2.8.tar.gz/from/a/mirror.   - php_build\     - bison.exe     - bison.simple     - flex.exe     - re2c.exe     - zip.exe     - bin\       - (libiconv, libxml2, and zlib dlls and related)     - include\       - arpa\       - conf\       - freetype\       - limxml\       - named\       - sys       - (ft2build.h, iconv.h, etc.)     - lib\       -( freetype_a.lib, icnov.lib, etc.)   Following the instructions at http://screencast.com/t/lSIaPpkLG I opened a command window, ran vcvars32.bat, CDd to C:\PhpDev\php-5.2.8, ran buildconf.bat, and issued cscript /nologo configure.js.   Note: C:\PhpDev\php_build is in the path.   The output from configure.js is: Saving configure options to config.nice.bat Checking for cl.exe ...  <in default path> Checking for cl.exe ...  <in default path> Detected MS compiler version 12 Detected 32-bit compiler Checking for link.exe ...  C:\PROGRA~1\MIAF9D~1\VC98\BIN Checking for nmake.exe ...  <in default path> Checking for lib.exe ...  <in default path> Checking for bison.exe ...  <in default path> Checking for flex.exe ...  <in default path> Checking for re2c.exe ...  <in default path> Checking for zip.exe ...  <in default path> Checking for lemon.exe ...  <not found> Checking for mc.exe ...  C:\PROGRA~1\MIAF9D~1\VC98\BIN Checking for mt.exe ...  C:\Program Files\Microsoft SDK\Bin\WinNT\ Checking for arpa\nameser.h ...  ..\php_build\include Checking for library resolv.lib ... ..\php_build\lib\resolv.lib   Build dir: Release_TS PHP Core:  php5ts.dll and php5ts.lib   Checking for wspiapi.h ...  <in default path> Enabling IPv6 support Checking for NewAPIs.h ...  <in default path> Enabling SAPI sapi\cgi Enabling SAPI sapi\cli Enabling extension ext\bcmath Enabling extension ext\calendar Checking for library oleaut32.lib ... <in LIB path> oleaut32.lib Enabling extension ext\com_dotnet Checking for mscoree.h ...  <not found> Checking for mscoree.h ...  <not found> Enabling extension ext\ctype Enabling extension ext\date Enabling extension ext\filter Enabling extension ext\ftp Checking for library libjpeg.lib ... ..\php_build\lib\libjpeg.lib Checking for library freetype2.lib ... <not found> WARNING: gd not enabled; libraries and headers not found   Enabling extension ext\hash Checking for iconv.h ...  ..\php_build\include Enabling extension ext\iconv Enabling extension ext\json Enabling extension ext\odbc Enabling extension ext\pcre Enabling extension ext\reflection Enabling extension ext\session Enabling extension ext\spl Checking for timelib_config.h ...  ext/date/lib Enabling extension ext\standard Enabling extension ext\tokenizer Enabling extension ext\zlib Checking for library zlib.lib ... ..\php_build\lib\zlib.lib Checking for zlib.h ...  ..\php_build\include Checking for library libxml2_a_dll.lib;libxml2_a.lib ... ..\php_build\lib\libxml2_a_dll.lib Checking for library iconv_a.lib;iconv.lib ... ...\php_build\lib\iconv.lib Checking for libxml/parser.h ...  ..\php_build\include Enabling extension ext\libxml Enabling extension ext\dom Enabling extension ext\simplexml Enabling extension ext\wddx Checking for timelib_config.h ...  ext/date/lib Enabling extension ext\xml Enabling extension ext\xmlreader Checking for libxml/xmlwriter.h ...  ..\php_build\include Enabling extension ext\xmlwriter   Creating build dirs... Generating files... Generating Makefile Generating main/internal_functions.c         [content unchanged; skipping] Generating main/config.w32.h Done.   Type 'nmake' to build PHP   Executing nmake then fails thus: Microsoft (R) Program Maintenance Utility   Version 6.00.9782.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved.   cgi_main.c C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(168) : error C2027: use of undefined type 'addrinfo'         C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(34) : see declaration of 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(184) : error C2037: left of 'ai_family' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(185) : error C2037: left of 'ai_socktype' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(186) : error C2037: left of 'ai_protocol' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(187) : error C2037: left of 'ai_addrlen' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(188) : error C2037: left of 'ai_addr' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(203) : error C2065: 'NI_MAXHOST' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(203) : error C2057: expected constant expression C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(203) : error C2466: cannot allocate an array of constant size 0 C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(249) : error C2065: 'EAI_MEMORY' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(251) : error C2037: left of 'ai_next' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(264) : error C2065: 'EAI_NONAME' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(265) : error C2065: 'EAI_AGAIN' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(266) : error C2065: 'EAI_FAIL' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(267) : error C2065: 'EAI_NODATA' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(310) : error C2057: expected constant expression C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(310) : error C2466: cannot allocate an array of constant size 0 C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(311) : error C2057: expected constant expression C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(311) : error C2466: cannot allocate an array of constant size 0 C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(349) : error C2037: left of 'ai_canonname' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(350) : error C2037: left of 'ai_canonname' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(389) : error C2037: left of 'ai_protocol' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(391) : error C2037: left of 'ai_addr' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(391) : error C2198: 'WspiapiNewAddrInfo' : too few actual parameters C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(396) : error C2037: left of 'ai_next' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(396) : error C2037: left of 'ai_next' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(397) : error C2037: left of 'ai_next' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(398) : error C2037: left of 'ai_next' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(429) : error C2037: left of 'ai_canonname' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(430) : error C2037: left of 'ai_canonname' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(430) : error C2198: 'free' : too few actual parameters C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(432) : error C2037: left of 'ai_addr' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(433) : error C2037: left of 'ai_addr' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(433) : error C2198: 'free' : too few actual parameters C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(435) : error C2037: left of 'ai_next' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(500) : error C2037: left of 'ai_addrlen' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(501) : error C2037: left of 'ai_canonname' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(502) : error C2037: left of 'ai_addr' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(503) : error C2037: left of 'ai_next' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(514) : error C2037: left of 'ai_flags' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(515) : error C2065: 'AI_CANONNAME' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(516) : error C2065: 'EAI_BADFLAGS' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(519) : error C2037: left of 'ai_family' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(521) : error C2065: 'EAI_FAMILY' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(524) : error C2037: left of 'ai_socktype' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(529) : error C2065: 'EAI_SOCKTYPE' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(532) : error C2037: left of 'ai_protocol' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(569) : error C2065: 'EAI_SERVICE' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(595) : error C2065: 'AI_PASSIVE' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(610) : error C2037: left of 'ai_flags' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(610) : error C2065: 'AI_NUMERICHOST' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(615) : error C2037: left of 'ai_canonname' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(617) : error C2037: left of 'ai_canonname' specifies undefined struct/union 'addrinfo' C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(723) : error C2065: 'NI_NUMERICHOST' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(723) : error C2065: 'NI_NAMEREQD' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(733) : error C2065: 'NI_NUMERICSERV' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(742) : error C2065: 'NI_DGRAM' : undeclared identifier C:\Program Files\Microsoft SDK\Include\.\wspiapi.h(785) : error C2065: 'NI_NOFQDN' : undeclared identifier sapi\cgi\cgi_main.c(470) : warning C4018: '<' : signed/unsigned mismatch NMAKE : fatal error U1077: '"cl.exe"' : return code '0x2' Stop.   I have spent the last few hours searching the web and trying various things, all with no apparent effect. I have been to the step-by-step guide on the Wiki (http://wiki.php.net/internals/windows/stepbystepbuild). Unfortunately, the actual setup portion hasn’t been written yet. That section says “… to be written”.   Help will be most appreciated. Thanks in advance,   Dave    

« previous php.internals.win (#382) next »