diff options
Diffstat (limited to 'win32utils/win32-build.txt')
-rw-r--r-- | win32utils/win32-build.txt | 302 |
1 files changed, 151 insertions, 151 deletions
diff --git a/win32utils/win32-build.txt b/win32utils/win32-build.txt index 25f0c5a4..5eeaed5e 100644 --- a/win32utils/win32-build.txt +++ b/win32utils/win32-build.txt @@ -1,151 +1,151 @@ -Copyright (C) 2004, 2005, 2008, 2009 Internet Systems Consortium, Inc. ("ISC") -Copyright (C) 2001, 2002 Internet Software Consortium. -See COPYRIGHT in the source root or http://isc.org/copyright.html for terms. - -$Id: win32-build.txt,v 1.19 2009-11-06 03:14:10 each Exp $ - - BIND 9.7 for Win32 Source Build Instructions. 02-Jul-2009 - -Building BIND 9.7 on Windows XP/2003/2008 has the following prerequisites: - -1) You need to install Perl for Windows. ActivePerl -(http://www.activestate.com/) and Strawberry Perl -(http://www.strawberryperl.com) have both been tested and found -to work. - -2) OpenSSL (http://www.openssl.org) needs to be downloaded and built -on the system on which you are building BIND. - -3) If you wish to use the statistics channel, LibXML2 -(ftp://xmlsoft.org/libxml2) needs to be downloaded and built on -the system on which you are building BIND. (If you do not wish -to use the statistics channel, remove HAVE_LIBXML2 from config.h.win32.) - -4) If you want to build using Visual C++ 6.0, you'll need some extra -files that are to be found in the Platform SDK (which you will need -to install), namely: - -iphlpapi.h -iptypes.h -ipexport.h -iphlpapi.lib - -You'll also need an updated Iprtrmib.h - using the VC++6.0 one will -get you some compilation errors. You can just overwrite the old one if -you're not using it for any purposes, and maybe keep a backup of it. - -You can copy the header files under VC98\INCLUDE and the library file -under VC98\LIB. I think you can also put them in a separate directory -and add it to the include search list, but I don't know if that can be -made persistent. - -For building on VC++ 7.0 no extra files are required. - -The instructions assume a Visual C++ 6.0 compiler with Visual Studio and -Visual Studio Service Pack 3 or later. It may build and work with earlier -versions but it has not been tested. The binaries may be built and run on -any of the following platforms: NT 4.0 Workstation (SP3 or later), NT 4.0 -Server (SP3 or later), Windows 2000 Professional (SP1 or later), -Windows 2000 Server or any kind (SP1 or later), Windows XP, Windows 2003 -Server. It will NOT build or run on Windows 95, Windows 98, etc. platforms. - -Step 1: Download and build OpenSSL - -Download and untar the OpenSSL sources from http://www.openssl.org/. -Extract them at in the same directory in which you extracted the BIND9 -source: If BIND9 is in \build\bind-9.7.0, for instance, OpenSSL should be -in \build\openssl-0.9.8l (subject to version number changes). - -Note: Building OpenSSL requires that you install Perl as it uses -it during its build process. The following commands work as of -openssl-0.9.8l, but you should check the OpenSSL distribution -to see if the build instructions have changed: - - cd openssl-0.9.8l - perl Configure VC-WIN32 --prefix=c:/openssl - ms\do_masm - nmake /f ms\ntdll.mak - -If you wish to use PKCS #11 to control a cryptographic hardware service -module, please see bind9\README.pkcs11. You will need to apply the patch -in bind9\bin\pkcs11\openssl-0.9.8l-patch (this can be done using the Cygwin -'patch' utility) and add --pk11-libname and --pk11-flavor to the Configure -command above. - -Step 2: Download and build libxml2 - -Download and untar the libxml2 sources from ftp://xmlsoft.org/libxml2. -Extract them at in the same directory in which you extracted the BIND9 -source: If BIND9 is in \build\bind-9.7.0, for instance, libxml2 should -be in \build\libxml2-2.7.3 (subject to version number changes). - -Now build libxml2, and copy the resulting files into the include and lib -directories: - - cd libxml2-2.7.3\win32 - cscript configure.js compiler=msvc vcmanifest=yes static=yes debug=no iconv=no - nmake /f Makefile.msvc libxml - -Step 3: Building BIND - -You must build openssl and libxml2 first. - -From the command prompt cd to the win32utils directory under -the BIND9 root: - - cd bind-9.7.0\win32utils - -If you wish to use PKCS #11 to control a cryptographic hardware service -module, set the path to the PKCS #11 provider library: - - perl setpk11provider.pl <DLL path> - -If using VC++ 6.0, run the BuildAll.bat file: - - BuildAll - -This will do the following: -1) copy config.h.win32 to config.h in the root. -2) create the versions.h file in the root. -3) Build the gen application in the lib/dns directory. -4) Run the gen application and build the required lib/dns header - files. -5) Create the Build/Release subdirectory under the root of the BIND - source tree which will hold the binaries being built. -6) Build the libraries, named, application tools like dig, rndc - dnssec tools, installer, checkconf and checkzones programs, - BIND 9 Installer. -7) Copies the release notes and the OpenSSL DLL to the BUILD/Release - directory. -8) Copies the BIND 9 ARM HTML files and the application HTML files - to the Build\Release area. - -If you wish to use the Visual Studio GUI for building, you can just -run the BuildSetup.bat file: - - BuildSetup - -This will create or find and copy into place several files which are -necessary for the build to proceed. It also locates and copies into place -the DLLs for OpenSSL and libxml2. - -Use BINDBuild.dsw (also located in the win32utils directory) to open the -workspace for all of the BIND9 libraries and applications. Select -"Build->Batch Build", click "Select All", then click "Build". - -After the build has completed, run the BuildPost.bat file: - - BuildPost - -...which does post-build processing. - -Installation is accomplished by running the BINDInstall program. All DLL's -are copied to the system32 area and all applications (including BINDInstall -which may be necessary for uninstalling BIND 9) to the dns/bin directory. -If BIND 8 has previously been installed on the system it must be uninstalled -first by running it's own BINDInstall program. The BIND 9 installer does -not yet do this. - -All bugs found, whether in the process of building the application or -running BIND or the tools should be reported to the bind9 bugs email -account at bind9-bugs@isc.org. +Copyright (C) 2004, 2005, 2008, 2009 Internet Systems Consortium, Inc. ("ISC")
+Copyright (C) 2001, 2002 Internet Software Consortium.
+See COPYRIGHT in the source root or http://isc.org/copyright.html for terms.
+
+$Id: win32-build.txt,v 1.19 2009-11-06 03:14:10 each Exp $
+
+ BIND 9.7 for Win32 Source Build Instructions. 02-Jul-2009
+
+Building BIND 9.7 on Windows XP/2003/2008 has the following prerequisites:
+
+1) You need to install Perl for Windows. ActivePerl
+(http://www.activestate.com/) and Strawberry Perl
+(http://www.strawberryperl.com) have both been tested and found
+to work.
+
+2) OpenSSL (http://www.openssl.org) needs to be downloaded and built
+on the system on which you are building BIND.
+
+3) If you wish to use the statistics channel, LibXML2
+(ftp://xmlsoft.org/libxml2) needs to be downloaded and built on
+the system on which you are building BIND. (If you do not wish
+to use the statistics channel, remove HAVE_LIBXML2 from config.h.win32.)
+
+4) If you want to build using Visual C++ 6.0, you'll need some extra
+files that are to be found in the Platform SDK (which you will need
+to install), namely:
+
+iphlpapi.h
+iptypes.h
+ipexport.h
+iphlpapi.lib
+
+You'll also need an updated Iprtrmib.h - using the VC++6.0 one will
+get you some compilation errors. You can just overwrite the old one if
+you're not using it for any purposes, and maybe keep a backup of it.
+
+You can copy the header files under VC98\INCLUDE and the library file
+under VC98\LIB. I think you can also put them in a separate directory
+and add it to the include search list, but I don't know if that can be
+made persistent.
+
+For building on VC++ 7.0 no extra files are required.
+
+The instructions assume a Visual C++ 6.0 compiler with Visual Studio and
+Visual Studio Service Pack 3 or later. It may build and work with earlier
+versions but it has not been tested. The binaries may be built and run on
+any of the following platforms: NT 4.0 Workstation (SP3 or later), NT 4.0
+Server (SP3 or later), Windows 2000 Professional (SP1 or later),
+Windows 2000 Server or any kind (SP1 or later), Windows XP, Windows 2003
+Server. It will NOT build or run on Windows 95, Windows 98, etc. platforms.
+
+Step 1: Download and build OpenSSL
+
+Download and untar the OpenSSL sources from http://www.openssl.org/.
+Extract them at in the same directory in which you extracted the BIND9
+source: If BIND9 is in \build\bind-9.7.0, for instance, OpenSSL should be
+in \build\openssl-0.9.8l (subject to version number changes).
+
+Note: Building OpenSSL requires that you install Perl as it uses
+it during its build process. The following commands work as of
+openssl-0.9.8l, but you should check the OpenSSL distribution
+to see if the build instructions have changed:
+
+ cd openssl-0.9.8l
+ perl Configure VC-WIN32 --prefix=c:/openssl
+ ms\do_masm
+ nmake /f ms\ntdll.mak
+
+If you wish to use PKCS #11 to control a cryptographic hardware service
+module, please see bind9\README.pkcs11. You will need to apply the patch
+in bind9\bin\pkcs11\openssl-0.9.8l-patch (this can be done using the Cygwin
+'patch' utility) and add --pk11-libname and --pk11-flavor to the Configure
+command above.
+
+Step 2: Download and build libxml2
+
+Download and untar the libxml2 sources from ftp://xmlsoft.org/libxml2.
+Extract them at in the same directory in which you extracted the BIND9
+source: If BIND9 is in \build\bind-9.7.0, for instance, libxml2 should
+be in \build\libxml2-2.7.3 (subject to version number changes).
+
+Now build libxml2, and copy the resulting files into the include and lib
+directories:
+
+ cd libxml2-2.7.3\win32
+ cscript configure.js compiler=msvc vcmanifest=yes static=yes debug=no iconv=no
+ nmake /f Makefile.msvc libxml
+
+Step 3: Building BIND
+
+You must build openssl and libxml2 first.
+
+From the command prompt cd to the win32utils directory under
+the BIND9 root:
+
+ cd bind-9.7.0\win32utils
+
+If you wish to use PKCS #11 to control a cryptographic hardware service
+module, set the path to the PKCS #11 provider library:
+
+ perl setpk11provider.pl <DLL path>
+
+If using VC++ 6.0, run the BuildAll.bat file:
+
+ BuildAll
+
+This will do the following:
+1) copy config.h.win32 to config.h in the root.
+2) create the versions.h file in the root.
+3) Build the gen application in the lib/dns directory.
+4) Run the gen application and build the required lib/dns header
+ files.
+5) Create the Build/Release subdirectory under the root of the BIND
+ source tree which will hold the binaries being built.
+6) Build the libraries, named, application tools like dig, rndc
+ dnssec tools, installer, checkconf and checkzones programs,
+ BIND 9 Installer.
+7) Copies the release notes and the OpenSSL DLL to the BUILD/Release
+ directory.
+8) Copies the BIND 9 ARM HTML files and the application HTML files
+ to the Build\Release area.
+
+If you wish to use the Visual Studio GUI for building, you can just
+run the BuildSetup.bat file:
+
+ BuildSetup
+
+This will create or find and copy into place several files which are
+necessary for the build to proceed. It also locates and copies into place
+the DLLs for OpenSSL and libxml2.
+
+Use BINDBuild.dsw (also located in the win32utils directory) to open the
+workspace for all of the BIND9 libraries and applications. Select
+"Build->Batch Build", click "Select All", then click "Build".
+
+After the build has completed, run the BuildPost.bat file:
+
+ BuildPost
+
+...which does post-build processing.
+
+Installation is accomplished by running the BINDInstall program. All DLL's
+are copied to the system32 area and all applications (including BINDInstall
+which may be necessary for uninstalling BIND 9) to the dns/bin directory.
+If BIND 8 has previously been installed on the system it must be uninstalled
+first by running it's own BINDInstall program. The BIND 9 installer does
+not yet do this.
+
+All bugs found, whether in the process of building the application or
+running BIND or the tools should be reported to the bind9 bugs email
+account at bind9-bugs@isc.org.
|