Building PHP 5.2.8 under Windows
| From: | David M. Patterson | Date: | Thu, 29 Jan 2009 21:16:58 +0000 |
| Subject: | Building PHP 5.2.8 under Windows | ||
| Groups: | php.internals | ||
| Request: | Send a blank email to internals+get-42877@lists.php.net to get a copy of this message | ||
Hello all.
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 Platform SDK V6.1 as specified here:
http://wiki.php.net/internals/windows/windowssdk
and downloaded from here:
http://www.microsoft.com/downloads/details.aspx?FamilyID=e6e1c3df-a74f-4207-
8586-711ebe331cdc
<http://www.microsoft.com/downloads/details.aspx?FamilyID=e6e1c3df-a74f-4207
-8586-711ebe331cdc&displaylang=en#Overview> &displaylang=en#Overview.
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 the 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