| 
 
 
 | 
| Keep Server Online 
 If you find the Apache Lounge, the downloads and overall help useful, please express your satisfaction with a donation.
 
 or
 
 
   
 A donation makes a contribution towards the costs, the time and effort that's going in this site and building.
 
 Thank You! Steffen
 
 Your donations will help to keep this site alive and well, and continuing building binaries. Apache Lounge is not sponsored.
 |  | 
 | 
| | 
| | 
|  Topic: [Windows] Building PHP under windows |  |  
| Author |  |  
| frozen 
 
 
 Joined: 14 Sep 2006
 Posts: 4
 Location: Canada
 
 | 
|  Posted: Thu 14 Sep '06 23:54    Post subject: [Windows] Building PHP under windows |   |  
| 
 |  
| In theory, if Apache runs better compiled with Visual C 8 then wouldn't PHP also? I am not even sure what the PHP binaries on php.net are compiled with but I would like to compile PHP 5.1.6 with Visual C 8. Where do I start?! |  |  
| Back to top |  |  
| tdonovan Moderator
 
 
 Joined: 17 Dec 2005
 Posts: 616
 Location: Milford, MA, USA
 
 | 
|  Posted: Fri 15 Sep '06 7:26    Post subject: |   |  
| 
 |  
| Well, I haven't given it much of a test - but these steps were enough to get PHP 5.1.6 built. 
 It starts up OK in Apache 2.2.3 and I've run a few simple PHP pages without problems.
 
 I hope this helps you get started.
 -tom-
 
 You need:
 Visual C++ 2005 Express Edition         http://msdn.microsoft.com/vstudio/express/visualc/download/
 Windows Server 2003 R2 Platform SDK     http://www.microsoft.com/downloads/details.aspx?FamilyId=0BAF2B35-C656-4969-ACE8-E4C0C0716ADB
 .NET Framework SDK Version 1.1          http://www.microsoft.com/downloads/details.aspx?FamilyId=9B3A2CA6-3647-4070-9F41-A333C6B9181D
 Windows Script Host                     http://www.microsoft.com/downloads/details.aspx?FamilyID=C717D943-7E4B-4622-86EB-95A22B832CAA
 
 Download php-5.1.6.tar.gz   from:  http://us3.php.net/get/php-5.1.6.tar.gz/from/a/mirror
 Untar this into your working directory
 
 Download http://www.php.net/extra/bindlib_w32.zip
 Extract this into (create new directory) bindlib_w32 in your working directory
 
 Download http://www.php.net/extra/win32build.zip
 Unzip into your working directory
 
 You should have three new directories named: php-5.1.6, bindlib_w32, and win32build
 
 Check that you have (at least) these directories in your PATH, INCLUDE, and LIB environment variables:
 PATH
 C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\bin
 C:\Program Files\Microsoft Visual Studio 8\Common7\IDE
 C:\Program Files\Microsoft Visual Studio 8\VC\BIN
 C:\Program Files\Microsoft Visual Studio 8\Common7\Tools
 C:\Program Files\Microsoft Visual Studio 8\VC\VCPackages
 INCLUDE
 C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include
 C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include\mfc
 C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE
 C:\Program Files\Microsoft.NET\SDK\v1.1\include
 LIB
 C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib
 C:\Program Files\Microsoft Visual Studio 8\VC\LIB
 C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\lib
 C:\Program Files\Microsoft.NET\SDK\v1.1\Lib
 
 Make sure there is a copy of zip.exe in your PATH
 (You can get it at http://www.info-zip.org/ if you don't have it)
 
 In Visual Studio 2005 Express - open bindlib_w32\bindlib.dsw
 Choose "Yes to all" to convert the project to VS8 format
 Select "Build" - "Configuration Manager..." - choose "Release"
 Select "Build" - "Build Solution"
 The last line in the Output window should say "========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped =========="
 
 Copy   bindlib_w32\Release\resolv.lib  to   win32build\lib\ (replacing the previous resolv.lib)
 
 Copy your installed Apache 2.2.3  \include and \lib directories to win32build\Apache2\include and win32build\Apache2\lib
 Rename win32build\Apache2\lib\libapr-1.lib to libapr.lib
 Rename win32build\Apache2\lib\libaprutil-1.lib to libaprutil.lib
 
 In the php-5.1.6 directory
  	  | Quote: |  	  | buildconf.bat 
 cscript /nologo configure.js  --help
 
 cscript /nologo configure.js  --enable-apache2handler --without-libxml --without-iconv --without-gd
 | 
 It seems to be OK if you are missing the programs "lemon" and "re2c"
 There should not be any other instances of "<not found>" in the output.
 If there are, you will either need to go find the missing files or disable that extension.
 I chose to disable libxml, iconv, and gd because I didn't have libjpeg.lib, libxml2.lib, and iconv.h.
 I didn't bother to go find them.
 
 |  |  
| Back to top |  |  
 
 | 
 |  | 
 |  |