Dear Wiki user, You have subscribed to a wiki page or wiki category on "Tomcat Wiki" for change notification.
The "BuildTcNativeWin" page has been changed by KonstantinKolinko: https://wiki.apache.org/tomcat/BuildTcNativeWin?action=diff&rev1=31&rev2=32 Comment: Remove the page. Replace it with a link to CWiki. This page describes the process for building the Windows Native Connector for Windows. This is the native part of the APR/Native connector. - The instructions on this page reference specific versions of numerous tools and dependencies. The versions referenced on this page are known to work. Other versions may work. Where information is available on the suitability (or otherwise) of alternative versions it is provided. All installations use default settings unless explicitly noted otherwise. Non-default settings in ''italics'' are provided for completeness but are believed not to impact on the success of the build process. Non-default settings in standard type may, or may not, impact the success of the build process. + == This page was moved to CWiki == + New address: [[https://cwiki.apache.org/confluence/display/TOMCAT/Building+the+Tomcat+Native+Connector+binaries+for+Windows]] - == Hardware == - Known working configurations include: - 1. VMware virtual machine - * ''60GB HDD'' - * ''2 processors'' - * ''2GB RAM'' - * ''No USB'' - * ''No sound'' - * ''Bridged networking'' - 1. Others TBD + ---- - == Operating System == - Known working configurations include: - 1. Windows 7 - * ''Static IP address'' - * ''1600x1200 screen resolution'' - * ''UTC timezone'' - * Install VMware Tools - * ''Apply all updates'' - 1. Others TBD - == Build tools == - 1. Mladen's Custom Microsoft Compiler Toolkit Compilation - * Git for windows (http://git-scm.com/) 1.9.4-20140611 - * https://github.com/mturk/cmsc (cb6be932c8c95a46262a64a89e68aae620dfdcee) - * Windows SDK - * No documentation - * No samples - * Complete set of developer tools - * Windows DDK - * Build environments - * Tools - * Compile as per <cmsc-root>/tools/README.txt - * Install Perl as per <cmsc-root>/tools/README.txt - * TortoiseSVN (http://tortoisesvn.net/) 1.8.7 64-bit - * 7-Zip 9.20 64-bit - * JDK 1.7.0_71 64-bit - 2. Others TBD - - == Building == - - While tcnative itself needs to be built ''last'', we unpack it first because there are some patches in the tcnative source distribution that will need to be applied to both APR and OpenSSL. - - {{{ - c: - cd \ - svn co https://svn.apache.org/repos/asf/tomcat/native/branches/1.1.x/ tomcat-native-1.1.x - cd tomcat-native-1.1.x\native\srclib\apr - }}} - - Unpack APR 1.5.1 source distribution in this directory ({{{C:\tomcat-native-1.1.x\native\srclib\apr}}}). - - Apply the apr-enable-ipv6.patch. Note that the patch will apply but depending on exactly which revision you are working with an offset may be required of ~6 lines. - {{{ - c:\cmsc\setenv.bat /x86 - nmake -f NMAKEMakefile BUILD_CPU=x86 APR_DECLARE_STATIC=1 - - c:\cmsc\setenv.bat /x64 - nmake -f NMAKEMakefile BUILD_CPU=x64 APR_DECLARE_STATIC=1 - - c:\cmsc\setenv.bat /i64 - nmake -f NMAKEMakefile BUILD_CPU=i64 APR_DECLARE_STATIC=1 - - cd ..\openssl - }}} - Unpack the OpenSSL 1.0.1m source distribution in this directory ({{{C:\tomcat-native-1.1.x\native\srclib\openssl}}}). - - Apply openssl-msvcrt.patch - {{{ - c:\cmsc\setenv.bat /x86 - perl Configure VC-WIN32 - ms\do_nasm - nmake -f ms\nt.mak - move out32 out32-x86 - - c:\cmsc\setenv.bat /x64 - perl Configure VC-WIN64A - ms\do_win64a - nmake -f ms\nt.mak clean - nmake -f ms\nt.mak - move out32 out32-x64 - - c:\cmsc\setenv.bat /i64 - perl Configure VC-WIN64I - ms\do_win64i - nmake -f ms\nt.mak clean - nmake -f ms\nt.mak - move out32 out32-i64 - }}} - - Keeping the various libraries in versioned directories saves having to rebuild them next time if the version remains unchanged. - {{{ - cd .. - - mkdir \deps-x86\apr-1.5.1\include - mkdir \deps-x86\apr-1.5.1\lib - mkdir \deps-x86\openssl-1.0.1m\include - mkdir \deps-x86\openssl-1.0.1m\lib - xcopy /E \deps-x86 \deps-x64\ - xcopy /E \deps-x86 \deps-i64\ - - xcopy /E apr\include \deps-x86\apr-1.5.1\include\ - xcopy /E apr\include \deps-x64\apr-1.5.1\include\ - xcopy /E apr\include \deps-i64\apr-1.5.1\include\ - - copy apr\WINXP_X86_LIB_RELEASE\apr-1.lib \deps-x86\apr-1.5.1\lib - copy apr\WINXP_X64_LIB_RELEASE\apr-1.lib \deps-x64\apr-1.5.1\lib - copy apr\WINXP_I64_LIB_RELEASE\apr-1.lib \deps-i64\apr-1.5.1\lib - - xcopy /E openssl\inc32 \deps-x86\openssl-1.0.1m\include\ - xcopy /E openssl\inc32 \deps-x64\openssl-1.0.1m\include\ - xcopy /E openssl\inc32 \deps-i64\openssl-1.0.1m\include\ - - copy openssl\out32-x86\*.lib \deps-x86\openssl-1.0.1m\lib\ - copy openssl\out32-x64\*.lib \deps-x64\openssl-1.0.1m\lib\ - copy openssl\out32-i64\*.lib \deps-i64\openssl-1.0.1m\lib\ - - cd .. - SET JAVA_HOME=C:\Program Files\Java\jdk1.7.0_71 - - c:\cmsc\setenv.bat /x86 - nmake -f NMAKEMakefile WITH_APR=C:\deps-x86\apr-1.5.1 WITH_OPENSSL=C:\deps-x86\openssl-1.0.1m APR_DECLARE_STATIC=1 ENABLE_OCSP=1 - move WINXP_X86_DLL_RELEASE WINXP_X86_OCSP_DLL_RELEASE - nmake -f NMAKEMakefile WITH_APR=C:\deps-x86\apr-1.5.1 WITH_OPENSSL=C:\deps-x86\openssl-1.0.1m APR_DECLARE_STATIC=1 - - c:\cmsc\setenv.bat /x64 - nmake -f NMAKEMakefile WITH_APR=C:\deps-x64\apr-1.5.1 WITH_OPENSSL=C:\deps-x64\openssl-1.0.1m APR_DECLARE_STATIC=1 ENABLE_OCSP=1 - move WINXP_X64_DLL_RELEASE WINXP_X64_OCSP_DLL_RELEASE - nmake -f NMAKEMakefile WITH_APR=C:\deps-x64\apr-1.5.1 WITH_OPENSSL=C:\deps-x64\openssl-1.0.1m APR_DECLARE_STATIC=1 - - c:\cmsc\setenv.bat /i64 - nmake -f NMAKEMakefile WITH_APR=C:\deps-i64\apr-1.5.1 WITH_OPENSSL=C:\deps-i64\openssl-1.0.1m APR_DECLARE_STATIC=1 ENABLE_OCSP=1 - move WINXP_I64_DLL_RELEASE WINXP_I64_OCSP_DLL_RELEASE - nmake -f NMAKEMakefile WITH_APR=C:\deps-i64\apr-1.5.1 WITH_OPENSSL=C:\deps-i64\openssl-1.0.1m APR_DECLARE_STATIC=1 - }}} - Tomcat Native Connector DLLs may then be found in C:\tomcat-native-1.1.x\native\WINXP_*_[OCSP_]DLL_RELEASE - - Construct the binary distributions - {{{ - set VER=1.1.33 - mkdir tomcat-native-%VER%-win32-bin - copy ..\LICENSE tomcat-native-%VER%-win32-bin\ - copy ..\NOTICE tomcat-native-%VER%-win32-bin\ - copy ..\README.txt tomcat-native-%VER%-win32-bin\ - copy srclib\VERSIONS tomcat-native-%VER%-win32-bin\ - mkdir tomcat-native-%VER%-win32-bin\bin - mkdir tomcat-native-%VER%-win32-bin\bin\i64 - mkdir tomcat-native-%VER%-win32-bin\bin\x64 - copy srclib\openssl\out32-x86\openssl.exe tomcat-native-%VER%-win32-bin\bin - xcopy /E tomcat-native-%VER%-win32-bin tomcat-native-%VER%-ocsp-win32-bin\ - copy WINXP_X86_DLL_RELEASE\tcnative-1.dll tomcat-native-%VER%-win32-bin\bin - copy WINXP_X86_OCSP_DLL_RELEASE\tcnative-1.dll tomcat-native-%VER%-ocsp-win32-bin\bin - copy WINXP_X86_DLL_RELEASE\tcnative-1-src.pdb tomcat-native-%VER%-win32-bin\bin - copy WINXP_X86_OCSP_DLL_RELEASE\tcnative-1-src.pdb tomcat-native-%VER%-ocsp-win32-bin\bin - copy WINXP_I64_DLL_RELEASE\tcnative-1.dll tomcat-native-%VER%-win32-bin\bin\i64 - copy WINXP_I64_OCSP_DLL_RELEASE\tcnative-1.dll tomcat-native-%VER%-ocsp-win32-bin\bin\i64 - copy WINXP_X64_DLL_RELEASE\tcnative-1.dll tomcat-native-%VER%-win32-bin\bin\x64 - copy WINXP_X64_OCSP_DLL_RELEASE\tcnative-1.dll tomcat-native-%VER%-ocsp-win32-bin\bin\x64 - - set PATH=%PATH%;%JAVA_HOME%\bin - cd tomcat-native-%VER%-win32-bin - jar -cMf ..\tomcat-native-%VER%-win32-bin.zip * - cd ..\tomcat-native-%VER%-ocsp-win32-bin - jar -cMf ..\tomcat-native-%VER%-ocsp-win32-bin.zip * - }}} - - The Windows binary distributions may then be found in {{{C:\tomcat-native-1.1.x\native\}}} - - These need to be signed and hashed before uploading for the release vote. - - Beware of typos in the name and contents of hash files for OCSP binaries ("ocsp" vs "oscp"). Such typos happened. - - A correct example: - - tomcat-native-1.1.32-ocsp-win32-bin.zip.md5 - {{{ - 0b0e1e4c77b9b7051fc2c751b70d2880 *tomcat-native-1.1.32-ocsp-win32-bin.zip - }}} - - tomcat-native-1.1.32-ocsp-win32-bin.zip.sha1 - {{{ - b47f96dd3153d002a529e881b6b8f524cd6e321c *tomcat-native-1.1.32-ocsp-win32-bin.zip - }}} - --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org