Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Httpd Wiki" for change 
notification.

The "Win32VC9Build" page has been changed by tdonovan.
http://wiki.apache.org/httpd/Win32VC9Build?action=diff&rev1=9&rev2=10

--------------------------------------------------

  = Building Apache with the Microsoft Windows 2008 SDK =
- 
  
[[http://www.microsoft.com/downloads/details.aspx?FamilyId=F26B1AA4-741A-433A-9BE5-FA919850BDBF|Windows
 SDK for Windows Server 2008 and .NET Framework 3.5]] contains a command-line 
compiler suitable for building Apache 2.2.14 on Windows XP or later.
  
  Despite the ''"2008"'' name - this freely available SDK is appropriate to use 
on Windows Server 2003, Windows Server 2008, Windows Vista, and Windows XP.
  
  This SDK contains the Visual C++ 2008 command-line compiler (a.k.a. VC9), the 
MASM v9.0 assembler, and the Windows libraries needed to build and run Apache.
  
- These are the steps to build Apache 2.2.14 with OpenSSL 0.9.8l and Zlib 1.2.3 
using the VC9 command-line compiler included in this Windows SDK:
+ These are the steps to build Apache 2.2.14 with OpenSSL 0.9.8l ''(Version 
0.9.8 revision lower case "L")'' and Zlib 1.2.3 using the VC9 command-line 
compiler included in this Windows SDK:
  
  == Tools Needed to Build httpd ==
+ Install the 
[[http://www.microsoft.com/downloads/details.aspx?FamilyId=F26B1AA4-741A-433A-9BE5-FA919850BDBF|Windows
 SDK for Windows Server 2008 and .NET Framework 3.5]] (approx: 450mb)
+ ||Windows 2008 SDK 
||http://www.microsoft.com/downloads/details.aspx?FamilyId=F26B1AA4-741A-433A-9BE5-FA919850BDBF
 ||
  
- Install the 
[[http://www.microsoft.com/downloads/details.aspx?FamilyId=F26B1AA4-741A-433A-9BE5-FA919850BDBF|Windows
 SDK for Windows Server 2008 and .NET Framework 3.5]] (approx: 450mb)
- || Windows 2008 SDK || 
http://www.microsoft.com/downloads/details.aspx?FamilyId=F26B1AA4-741A-433A-9BE5-FA919850BDBF
 ||
+ 
+ 
  
  Install Perl and several GNU utilities: tar, gzip, wget, and awk. These are 
tools which are needed to build Apache:
- || [[http://www.activestate.com/Products/activeperl|ActiveState Perl]] ||     
 
http://www.activestate.com/store/download.aspx?prdGUID=81fbce82-6bd5-49bc-a915-08d58c2648ca
 ||
+ ||[[http://www.activestate.com/Products/activeperl|ActiveState Perl]] 
||http://www.activestate.com/store/download.aspx?prdGUID=81fbce82-6bd5-49bc-a915-08d58c2648ca
 ||
- || GNU tar ||      http://gnuwin32.sourceforge.net/packages/gtar.htm ||
+ ||GNU tar ||http://gnuwin32.sourceforge.net/packages/gtar.htm ||
- || GNU gzip ||      http://gnuwin32.sourceforge.net/packages/gzip.htm ||
+ ||GNU gzip ||http://gnuwin32.sourceforge.net/packages/gzip.htm ||
- || GNU wget ||      http://gnuwin32.sourceforge.net/packages/wget.htm ||
+ ||GNU wget ||http://gnuwin32.sourceforge.net/packages/wget.htm ||
- || GNU gawk (awk) ||  http://gnuwin32.sourceforge.net/packages/gawk.htm ||
+ ||GNU gawk (awk) ||http://gnuwin32.sourceforge.net/packages/gawk.htm ||
+ 
+ 
+ 
  
  == Setup the build environment ==
+ Open a command window and set up the development environment:
  
- Open a command window and set up the development environment:
  {{{
  "C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat"
  }}}
+ Add Perl and the GNU utilities to your PATH environment variable:
  
- Add Perl and the GNU utilities to your PATH environment variable:
  {{{
  PATH=%PATH%;C:\Perl\bin;C:\Program Files\GnuWin32\bin
  }}}
- 
  == Download the source code ==
- 
  ==== Download and extract the Apache httpd version 2.2.14 Windows source (not 
the Unix source) ====
- 
  {{{
  WGET http://www.apache.org/dist/httpd/httpd-2.2.14-win32-src.zip
  }}}
- 
  Open httpd-2.2.14-win32-src.zip and extract it, creating a httpd-2.2.14 
directory
  
  ==== Download and extract the Zlib version 1.2.3 source into 
httpd-2.2.14\srclib\zlib ====
- 
  {{{
  CD   httpd-2.2.14\srclib
  WGET http://www.zlib.net/zlib-1.2.3.tar.gz
@@ -53, +52 @@

  TAR  xf  zlib-1.2.3.tar
  RENAME   zlib-1.2.3   zlib
  }}}
- 
  ==== Download and extract the OpenSSL version 0.9.8l source, into 
httpd-2.2.14\srclib\openssl ====
  {{{
  CD   httpd-2.2.14\srclib
@@ -62, +60 @@

  TAR  xf  openssl-0.9.8l.tar
  RENAME   openssl-0.9.8l   openssl
  }}}
- 
  == Build Zlib ==
- 
  {{{
  CD  httpd-2.2.14\srclib\zlib
  ML /coff /Zi /c contrib\masm686\match.asm
  NMAKE -f win32\Makefile.msc  LOC="-D_CRT_SECURE_NO_DEPRECATE /wd4996 -DASMV" 
OBJA="match.obj"
  MT -manifest zlib1.dll.manifest -outputresource:zlib1.dll;2
  }}}
- 
  == Build OpenSSL ==
- 
- 
-    '''For OpenSSL version 0.9.8h & version 0.9.8i ONLY: '''
-    ''Edit the file httpd-2.2.14\srclib\openssl\crypto\perlasm\x86ms.pl and 
remove line 273. Line 273 contains the single word "$extra". This is a known 
problem with OpenSSL 0.9.8h and 0.9.8i, and is fixed in later versions. ref: 
OpenSSL bug 1681, described 
[[http://www.mail-archive.com/[email protected]/msg24058.html|here]] and 
[[http://groups.google.com/group/mailing.openssl.dev/browse_thread/thread/0919a6ec791206a2|here]]''
+  . '''For OpenSSL version 0.9.8h & version 0.9.8i ONLY: ''' ''Edit the file 
httpd-2.2.14\srclib\openssl\crypto\perlasm\x86ms.pl and remove line 273. Line 
273 contains the single word "$extra". This is a known problem with OpenSSL 
0.9.8h and 0.9.8i, and is fixed in later versions. ref: OpenSSL bug 1681, 
described 
[[http://www.mail-archive.com/[email protected]/msg24058.html|here]] and 
[[http://groups.google.com/group/mailing.openssl.dev/browse_thread/thread/0919a6ec791206a2|here]]''
  
  {{{
  CD  httpd-2.2.14\srclib\openssl
@@ -84, +76 @@

  ms\do_masm
  NMAKE -f ms\ntdll.mak
  }}}
- 
  '''Note:''' The IDEA algorithm is disabled because it is built by default 
with OpenSSL 0.9.8.  
[[http://www.mediacrypt.com/_contents/10_idea/101030_ea_pi.asp|The IDEA 
algorithm is patented]] for commercial use.  Camellia and the other OpenSSL 
0.9.8 algorithms which are built by default are not ''(or are no longer)'' 
encumbered by patents.
  
  '''Note:''' There remain restrictions and prohibitions on the use and 
distribution of strong cryptography in some parts of the world.  OpenSSL 
includes strong cryptography which may be restricted by local export 
regulations or other laws.
  
- 
  == Build and install Apache httpd ==
- 
  {{{
  CD  httpd-2.2.14
  NMAKE -f Makefile.win installr
@@ -101, +90 @@

  If you copy Apache to another machine, remember to install the 
[[http://www.microsoft.com/downloads/details.aspx?FamilyID=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF|Microsoft
 Visual C++ 2008 Redistributable Package]] before running it.
  
  == Including Database Drivers with Apache httpd ==
+ The ODBC driver is included by default on Windows. To add additional database 
drivers, first ensure that your LIB and INCLUDE environment variables include 
the directories which contain the .lib and .h files for your database.  Add a 
{{{DBD_LIST}}} to your NMAKE command, which should be be set to a 
space-separated list of the desired drivers.  For example - if MySQL is in 
C:\MySQL and SQLite is in C:\SQLite:
  
- The ODBC driver is included by default on Windows. To add additional database 
drivers, first ensure that your LIB and INCLUDE environment variables include 
the directories which contain the .lib and .h files for your database.  Add a 
{{{DBD_LIST}}} to your NMAKE command, which should be be set to a 
space-separated list of the desired drivers.  For example - if MySQL is in 
C:\MySQL and SQLite is in C:\SQLite: {{{
+ {{{
  SET INCLUDE=%INCLUDE%;C:\MySQL\include;C:\SQLite
  SET LIB=%LIB%;C:\MySQL\lib\opt;C:\SQLite
  NMAKE -f Makefile.win  INSTDIR=D:\Apache2  DBD_LIST="odbc mysql sqlite3"  
installr

Reply via email to