Greetings:
I obtained a copy of Visual Studio .NET and tried to build PHP 5 from the
current source. Ran into some problems when it came to the configure.js
step. Here are the steps I took...
Start VS .NET command prompt
mkdir php5
mkdir php5\win32
mkdir php5\win32\build
[Obtain zip from http://www.php.net/extra/win32build.zip]
unzip f:\php\win32build--2004.01.02.zip -d php5
cvs -d :pserver:cvsread@cvs.php.net:/repository co -d php5\bindlib_w32
bindlib_w32
cvs -d :pserver:cvsread@cvs.php.net:/repository co -d phpbuild
php-src/win32/build
xcopy phpbuild php5\win32\build
cvs -d :pserver:cvsread@cvs.php.net:/repository co -d php5 php-src
cd php5
buildconf.bat
cscript /nologo configure.js --without-gd --without-libxml --disable-zlib
--without-iconv
Saving configure options to config.nice.bat
Checking for cl.exe ... <in default path>
Checking for link.exe ... <in default path>
Checking for nmake.exe ... <in default path>
Checking for lib.exe ... <in default path>
Checking for bison.exe ... <not found>
Checking for flex.exe ... <not found>
Checking for re2c.exe ... <not found>
Checking for zip.exe ... <in default path>
Checking for lemon.exe ... <not found>
Checking for arpa\nameser.h ... <not found>
Checking for arpa\nameser.h ... <not found>
ERROR: We really need that arpa\nameser.h file - it is part of the
win32build package
So, it looks like Visual Studio .NET isn't going to cut it, huh?
Also, what's up with arpa\namser.h not being found?
--Dan
--
T H E A N A L Y S I S A N D S O L U T I O N S C O M P A N Y
data intensive web and database programming
http://www.AnalysisAndSolutions.com/
4015 7th Ave #4, Brooklyn NY 11232 v: 718-854-0335 f: 718-854-0409
I obtained a copy of Visual Studio .NET and tried to build PHP 5 from the
current source. Ran into some problems when it came to the configure.js
step. Here are the steps I took...
[...]
cvs -d :pserver:cvsread@cvs.php.net:/repository co -d php5\bindlib_w32
bindlib_w32
cvs -d :pserver:cvsread@cvs.php.net:/repository co bindlib_w32
(e.g. parallel to the php5 directory)
cvs -d :pserver:cvsread@cvs.php.net:/repository co -d php5 php-src
cvs -d :pserver:cvsread@cvs.php.net:/repository co php5
The 'php5' module alias will ensure that ZendEngine2 is checked out
into the 'Zend' directory.
So, it looks like Visual Studio .NET isn't going to cut it, huh?
It works fine for me. I've been using it all day (building on the
command line and debugging in the IDE).
--
Jon Parise (jon@php.net) :: The PHP Project (http://www.php.net/)
Hi Everyone:
Thanks for the suggestions. I'm still not there. I tad more help will be
appreciated, please. First I'll reply to your points then supply the
latest list of commands I tried.
cvs -d :pserver:cvsread@cvs.php.net:/repository co -d php5\bindlib_w32
bindlib_w32cvs -d :pserver:cvsread@cvs.php.net:/repository co bindlib_w32
(e.g. parallel to the php5 directory)
Hmm... Then what's the purpose of the bindlib_w32 subdirectories in the
php-src tree? Should be removed from CVS for clarity?
So, it looks like Visual Studio .NET isn't going to cut it, huh?
It works fine for me. I've been using it all day (building on the
command line and debugging in the IDE).
Have you ever installed an earlier version of Visual Studio or header
files from somewhere else too? Doing the
"cscript /nologo configure.js..." step for me complains, in part, about
mscoree.h being missing.
Looks like you need to get the resolv.lib replacement
and win32 buildtools at
http://www.php.net/manual/en/install.windows.php#install.windows.build.
Isn't that what I did?
Have you configured VC to look for the bin, lib, and
include directories in the win32build folder?
Nope. This looks like an important step that I'm missing. I trust I can
append those to the appropriate environment variable using the command
line. What's the environment variable in question, please?
As Jon suggested, taking bindlib_w32 from CVS rather than from the build zip
makes more sense. 1. the build zip isn't up to date unless someone fixed
this over the past week
I thought I did that. Okay, so here's my latest attempt:
d:
cd
mkdir php5
mkdir php5\win32
mkdir php5\win32\build
cvs -d :pserver:cvsread@cvs.php.net:/repository co -d phpbuild
php-src/win32/build
xcopy phpbuild php5\win32\build
cvs -d :pserver:cvsread@cvs.php.net:/repository co bindlib_w32
cvs -d :pserver:cvsread@cvs.php.net:/repository co php5
cd php5
lynx -dump http://www.php.net/extra/win32build.zip > win32build.zip
unzip win32build.zip
buildconf.bat
cscript /nologo configure.js --without-gd --without-libxml --disable-zlib
--without-iconv
Which outputs...
Saving configure options to config.nice.bat
Checking for cl.exe ... <in default path>
Checking for link.exe ... <in default path>
Checking for nmake.exe ... <in default path>
Checking for lib.exe ... <in default path>
Checking for bison.exe ... <not found>
Checking for flex.exe ... <not found>
Checking for re2c.exe ... <not found>
Checking for zip.exe ... <in default path>
Checking for lemon.exe ... <not found>
Checking for arpa\nameser.h ... ..\bindlib_w32
Checking for resolv.lib ... <not found>
Checking for Release\resolv.lib ... <not found>
Checking for resolv.lib ... <not found>
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 oleaut32.lib ... <in default path>
Enabling extension ext\com_dotnet
Checking for mscoree.h ... <not found>
Checking for mscoree.h ... <not found>
Enabling extension ext\ctype
Enabling extension ext\ftp
Enabling extension ext\odbc
Enabling extension ext\pcre
Enabling extension ext\session
Enabling extension ext\sqlite
Enabling extension ext\standard
Enabling extension ext\tokenizer
Creating build dirs...
Generating files...
Generating Makefile
Generating main/internal_functions.c
Generating main/config.w32.h
Done.
Type 'nmake' to build PHP
Thanks again,
--Dan
--
T H E A N A L Y S I S A N D S O L U T I O N S C O M P A N Y
data intensive web and database programming
http://www.AnalysisAndSolutions.com/
4015 7th Ave #4, Brooklyn NY 11232 v: 718-854-0335 f: 718-854-0409
cvs -d :pserver:cvsread@cvs.php.net:/repository co -d php5\bindlib_w32
bindlib_w32cvs -d :pserver:cvsread@cvs.php.net:/repository co bindlib_w32
(e.g. parallel to the php5 directory)Hmm... Then what's the purpose of the bindlib_w32 subdirectories in the
php-src tree? Should be removed from CVS for clarity?
They have been removed; those directories are empty. Running 'cvs
update -P' will prune those empty directories from your local
checkout.
So, it looks like Visual Studio .NET isn't going to cut it, huh?
It works fine for me. I've been using it all day (building on the
command line and debugging in the IDE).Have you ever installed an earlier version of Visual Studio or header
files from somewhere else too? Doing the
"cscript /nologo configure.js..." step for me complains, in part, about
mscoree.h being missing.
I'm running this version of the compiler:
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 13.00.9466 for 80x86
I don't think I have any additional SDK's installed right now other
than the Microsoft .NET Framework, but I could be mistaken. I've used
this machine for a lot of Windows-based development in the past.
Checking for arpa\nameser.h ... ..\bindlib_w32
Checking for resolv.lib ... <not found>
Checking for Release\resolv.lib ... <not found>
Checking for resolv.lib ... <not found>
You need to build resolv.lib if you're going to check out the
bindlib_w32 source directory. The compiled library is not stored in
cvs.
--
Jon Parise (jon@php.net) :: The PHP Project (http://www.php.net/)
As Jon suggested, taking bindlib_w32 from CVS rather than from the build zip
makes more sense. 1. the build zip isn't up to date unless someone fixed
this over the past week, 2. the bindlib_w32 dir should be at the top level.
-----Original Message-----
From: Daniel Convissor [mailto:danielc@analysisandsolutions.com]
Sent: 03 January 2004 04:24
To: PHP Internals List
Subject: [PHP-DEV] win32 build system and VS .NETGreetings:
I obtained a copy of Visual Studio .NET and tried to build PHP 5 from the
current source. Ran into some problems when it came to the configure.js
step. Here are the steps I took...Start VS .NET command prompt
mkdir php5
mkdir php5\win32
mkdir php5\win32\build[Obtain zip from http://www.php.net/extra/win32build.zip]
unzip f:\php\win32build--2004.01.02.zip -d php5cvs -d :pserver:cvsread@cvs.php.net:/repository co -d php5\bindlib_w32
bindlib_w32cvs -d :pserver:cvsread@cvs.php.net:/repository co -d phpbuild
php-src/win32/build
xcopy phpbuild php5\win32\buildcvs -d :pserver:cvsread@cvs.php.net:/repository co -d php5 php-src
cd php5
buildconf.bat
cscript /nologo configure.js --without-gd --without-libxml --disable-zlib
--without-iconvSaving configure options to config.nice.bat
Checking for cl.exe ... <in default path>
Checking for link.exe ... <in default path>
Checking for nmake.exe ... <in default path>
Checking for lib.exe ... <in default path>
Checking for bison.exe ... <not found>
Checking for flex.exe ... <not found>
Checking for re2c.exe ... <not found>
Checking for zip.exe ... <in default path>
Checking for lemon.exe ... <not found>
Checking for arpa\nameser.h ... <not found>
Checking for arpa\nameser.h ... <not found>
ERROR: We really need that arpa\nameser.h file - it is part of the
win32build packageSo, it looks like Visual Studio .NET isn't going to cut it, huh?
Also, what's up with arpa\namser.h not being found?
--Dan
--
T H E A N A L Y S I S A N D S O L U T I O N S C O M P A N Y
data intensive web and database programming
http://www.AnalysisAndSolutions.com/
4015 7th Ave #4, Brooklyn NY 11232 v: 718-854-0335 f: 718-854-0409