Changes between Version 53 and Version 54 of BuildingOnWindows


Ignore:
Timestamp:
02/15/11 14:43:18 (13 years ago)
Author:
Samuli Seppänen
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • BuildingOnWindows

    v53 v54  
    145145After setting up the directories, you should check if some of OpenVPN's build configuration files need modifications:
    146146
    147  * ''<openvpn-build-root>\config-win32.h'': variables shared with the ''autotools''-based (Windows) build system. This is the file to edit if you want to enable/disable some of OpenVPN's features.
    148  * ''<openvpn-build-root>\win\settings.in'': variables specific to Python-based builds. In most cases you don't need to edit this file.
     147 * ''<openvpn-sources>\config-win32.h'': variables shared with the ''autotools''-based (Windows) build system. This is the file to edit if you want to enable/disable some of OpenVPN's features.
     148 * ''<openvpn-sources>\win\settings.in'': variables specific to Python-based builds. In most cases you don't need to edit this file.
    149149
    150150== Building OpenVPN ==
    151151
    152 Next fire up a ''Visual Studio 2008 Command Prompt and go to ''<openvpn-build-root\win'' directory. You should now build OpenVPN + the TAP driver using
     152Next fire up a ''Visual Studio 2008 Command Prompt'' and go to ''<openvpn-sources>\win'' directory. You should now build OpenVPN + the TAP driver using
    153153
    154154{{{
     
    156156}}}
    157157
    158 This builds ''openvpn.exe'', ''openvpnserv.exe'' and the TAP driver and copies the results to ''<openvpn-build-root>\dist''. The ''--unsigned'' switch disables TAP driver signing, which would not work anyways because the ''Sign'' Python module (see above) is missing. If you intend to use signed TAP drivers from existing OpenVPN installer, you can skip building the TAP driver altogether:
     158This builds ''openvpn.exe'', ''openvpnserv.exe'' and the TAP driver and copies the results to ''<openvpn-sources>\dist''. The ''--unsigned'' switch disables TAP driver signing, which would not work anyways because the ''Sign'' Python module (see above) is missing. If you intend to use signed TAP drivers from existing OpenVPN installer, you can skip building the TAP driver altogether:
    159159
    160160{{{
     
    176176== Packaging OpenVPN ==
    177177
    178 Once OpenVPN build is finished, you may want to make an installer executable. OpenVPN installers are packaged using [http://nsis.sourceforge.net/Main_Page NSIS], which you can download from [http://nsis.sourceforge.net/Download here]. The buildsystem (win\make_dist.py) puts everything the NSI script (<openvpn-sources>\win\openvpn.nsi) needs to ''<openvpn-sources>\dist''. However, there are still (as of OpenVPN 2.2-rc) a few manual steps involved:
    179 
    180  * If you are using signed TAP drivers from an existing OpenVPN installer, you need to do one extra step: place the signed TAP drivers and corresponding ''tapinstall.exe'' to ''<openvpn-sources>\dist\i386'' and ''<openvpn-sources>\dist\amd64'', respectively. Make sure 32-bit files go to ''i386'' directory and 64-bit files to ''amd64'' directory.
    181  * You need to [http://msdn.microsoft.com/en-us/library/ms235591%28v=vs.80%29.aspx manually embed manifest files] to ''openvpn.exe'', ''openvpnserv.exe'', ''lzo2.dll'' and ''libpkcs11-helper-1.dll''. The purpose of the manifest file - whether embedded or not - is to declare the run-time dependencies of the EXE/DLL. This step is required because the NSI script does not include external manifest files.
    182 
    183 OpenVPN installer is driven by the ''<openvpn-sources>\win\openvpn.nsi'' NSI script, which is loaded to the ''MakeNSIS'' application to generate an installer. If the ''<openvpn-sources>\dist'' directory has been properly set up, you should not encounter any errors. However, if ''MakeNSIS'' complains about missing files, make sure the ''<openvpn-sources>\dist'' directory contains all of the packaging dependencies:
     178Once OpenVPN build is finished, you may want to make an installer executable. OpenVPN installers are packaged using [http://nsis.sourceforge.net/Main_Page NSIS], which you can download from [http://nsis.sourceforge.net/Download here]. The buildsystem, or more correctly ''<openvpn-sources>\win\make_dist.py'' - puts everything the NSI script (''<openvpn-sources>\win\openvpn.nsi'') needs to ''<openvpn-sources>\dist''. However, as of OpenVPN 2.2-rc there are still a few manual steps involved:
     179
     180 * If you need to run OpenVPN on Windows Vista/7 64-bit you have to use signed TAP drivers. Unless you sign them yourself, you need to do two extra steps:
     181  * Extract TAP-drivers and ''tapinstall.exe'' from an official OpenVPN installer using [http://www.7-zip.org/ 7-zip].
     182  * Place the signed TAP drivers and corresponding ''tapinstall.exe'' to ''<openvpn-sources>\dist\i386'' and ''<openvpn-sources>\dist\amd64'', respectively. Put 32-bit files to the ''i386'' directory and 64-bit files to the ''amd64'' directory.
     183 * [http://msdn.microsoft.com/en-us/library/ms235591%28v=vs.80%29.aspx Embed manifest files manually] to ''openvpn.exe'', ''openvpnserv.exe'', ''lzo2.dll'' and ''libpkcs11-helper-1.dll''. The purpose of the manifest file (whether embedded or not) is to declare the run-time dependencies of the EXE/DLL. This step is required because the NSI script is not configured to install external manifest files and a manifest file is needed for proper operation.
     184
     185OpenVPN installer is driven by the ''<openvpn-sources>\win\openvpn.nsi'' NSI script, which has to be loaded with the [http://nsis.sourceforge.net/Main_Page MakeNSIS] application to generate an installer. If the ''<openvpn-sources>\dist'' directory has been properly set up, you should not encounter any errors. However, if ''MakeNSIS'' complains about missing files, make sure the ''<openvpn-sources>\dist'' directory contains all of the packaging dependencies:
    184186
    185187 * '''amd64'''