Differences

This shows you the differences between two versions of the page.

Link to this comparison view

devel:windowsinstaller [2011/06/03 11:05] – Add a reminder about the missing NSIS plugin zip files xueshengdevel:windowsinstaller [2011/09/18 19:58] (current) – external edit 127.0.0.1
Line 1: Line 1:
 ====== How to build the Windows installer for POPFile 1.1.2 (draft) ====== ====== How to build the Windows installer for POPFile 1.1.2 (draft) ======
  
 +^The Community Edition (i.e. the free edition) of %%ActivePerl%% 5.8.x is no longer available^
  
 ===== Introduction ===== ===== Introduction =====
Line 89: Line 89:
 When PPM updates an existing Perl package or installs a new Perl package these changes are stored separately from the packages included in the %%ActivePerl%% distribution. This means that the Windows installer uses a mixture of original and new/updated package paths when assembling the minimal Perl. When PPM updates an existing Perl package or installs a new Perl package these changes are stored separately from the packages included in the %%ActivePerl%% distribution. This means that the Windows installer uses a mixture of original and new/updated package paths when assembling the minimal Perl.
  
-Here is a complete list of the PPM updates applied to a clean installation of %%ActivePerl%% 5.8.9 build 829 for the POPFile 1.1.2 release. Each package was updated separately.+Here is a complete list of the PPM updates applied to a clean installation of %%ActivePerl%% 5.8.9 build 829 for the POPFile 1.1.2 release. Each package was updated separately (i.e. the updates were done one package at a time).
  
 ^ Package Name           ^ Version ^ Repository      ^ Description ^ ^ Package Name           ^ Version ^ Repository      ^ Description ^
Line 119: Line 119:
 |Math-Complex            |1.57     |%%ActiveState%% |complex numbers and associated mathematical functions | |Math-Complex            |1.57     |%%ActiveState%% |complex numbers and associated mathematical functions |
 |Module-Build            |0.3624   |%%ActiveState%% |Build and install Perl modules | |Module-Build            |0.3624   |%%ActiveState%% |Build and install Perl modules |
-|Module-Metadata         |1.000004 |%%ActiveState%% |Gather package and POD information from perl module files (automatically installed when 'Module-Build 0.3624' was installed) | +|Module-Metadata         |1.000004 |%%ActiveState%% |Gather package and POD information from perl module files (automatically installed by PPM when the 'Module-Build 0.3624' package was installed) | 
-|version                 |0.88     |%%ActiveState%% |Structured version objects (automatically installed when 'Module-Build 0.3624' was installed) | +|version                 |0.88     |%%ActiveState%% |Structured version objects (automatically installed by PPM when the 'Module-Build 0.3624' package was installed) | 
-|Perl-OSType             |1.002    |%%ActiveState%% |Map Perl operating system names to generic types (automatically installed when 'Module-Build 0.3624' was installed ) | +|Perl-OSType             |1.002    |%%ActiveState%% |Map Perl operating system names to generic types (automatically installed by PPM when the 'Module-Build 0.3624' package was installed ) | 
-|CPAN-Meta-YAML          |0.003    |%%ActiveState%% |Read and write a subset of YAML for CPAN Meta files (automatically installed when 'Module-Build 0.3624' was installed ) |+|CPAN-Meta-YAML          |0.003    |%%ActiveState%% |Read and write a subset of YAML for CPAN Meta files (automatically installed by PPM when the 'Module-Build 0.3624' package was installed ) |
 |Module-Corelist         |2.49     |%%ActiveState%% |what modules shipped with versions of perl | |Module-Corelist         |2.49     |%%ActiveState%% |what modules shipped with versions of perl |
 |Module-Load-Conditional |0.44     |%%ActiveState%% |Looking up module information / loading at runtime | |Module-Load-Conditional |0.44     |%%ActiveState%% |Looking up module information / loading at runtime |
Line 161: Line 161:
 |IO-Socket-Socks   |0.4   |%%ActiveState%% |Provides a way to create socks client or server both 4 and 5 version | |IO-Socket-Socks   |0.4   |%%ActiveState%% |Provides a way to create socks client or server both 4 and 5 version |
 |IO-Socket-SSL     |1.13  |  tcool         |Nearly transparent SSL encapsulation for IO::Socket::INET | |IO-Socket-SSL     |1.13  |  tcool         |Nearly transparent SSL encapsulation for IO::Socket::INET |
-|Net-SSLeay        |1.36  |  bribes        |Perl extension for using %%OpenSSL%% (automatically installed when 'IO-Socket-SSL 1.13' was installed) |+|Net-SSLeay        |1.36  |  bribes        |Perl extension for using %%OpenSSL%% (automatically installed by PPM when the 'IO-Socket-SSL 1.13' package was installed) |
 |Text-Kakasi       |2.04  |  uwinnipeg     |perl frontend to kakasi | |Text-Kakasi       |2.04  |  uwinnipeg     |perl frontend to kakasi |
 |%%TimeDate%%          |1.20  |%%ActiveState%% |Parsing of date strings | |%%TimeDate%%          |1.20  |%%ActiveState%% |Parsing of date strings |
Line 179: Line 179:
  
 FIXME Give download links for the %%BerkeleyDB-0.22-modified.zip%% and DBD-SQLite2-0.33.zip files plus installation instructions for these files. FIXME Give download links for the %%BerkeleyDB-0.22-modified.zip%% and DBD-SQLite2-0.33.zip files plus installation instructions for these files.
 +
 +FIXME Give instructions for using PPM's command-line mode to install %%BerkeleyDB%% v-.22 and DBD-SQLite2 v0.33
  
 ===== PDK - Perl Dev Kit (optional) ===== ===== PDK - Perl Dev Kit (optional) =====
Line 191: Line 193:
   * ''popfile-service.exe'' (runs POPFile as a service)   * ''popfile-service.exe'' (runs POPFile as a service)
  
-These programs are all built using [[http://www.activestate.com/perl_dev_kit/| ActiveState's Perl Dev Kit (PDK)]]. The Windows version of POPFile is a 32-bit program so the 32-bit (x86) Windows version of the PDK is required. Unlike %%ActivePerl%%, the PDK requires a licence. In January 2010 the cost of a single-user PDK licence was US $295. A time-limited free trial version of the PDK is also available.+These programs are all built using [[http://www.activestate.com/perl_dev_kit/| ActiveState's Perl Dev Kit (PDK)]]. The Windows version of POPFile is a 32-bit program so the 32-bit (x86) Windows version of the PDK is required. Unlike %%ActivePerl%%, the PDK requires a licence. In June 2011 the cost of a single-user PDK licence was US $295. A time-limited free trial version of the PDK is also available.
  
 Note that POPFile's Subversion repository includes pre-built versions of these six Perl-based programs which is why the PDK is described as "optional" here. The Subversion log entry for each program normally identifies the PDK version used to build the program. Note that POPFile's Subversion repository includes pre-built versions of these six Perl-based programs which is why the PDK is described as "optional" here. The Subversion log entry for each program normally identifies the PDK version used to build the program.
Line 215: Line 217:
 The POPFile installer and some of the NSIS-based POPFile utilities require some additional NSIS plugins. Each plugin is usually made available as a zip file containing the plugin DLL, the source code for the DLL, some documentation, one or more example scripts and occasionally some macros and other support functions in a NSIS header (*.nsh) file. The POPFile installer and some of the NSIS-based POPFile utilities require some additional NSIS plugins. Each plugin is usually made available as a zip file containing the plugin DLL, the source code for the DLL, some documentation, one or more example scripts and occasionally some macros and other support functions in a NSIS header (*.nsh) file.
  
-^ Plugin Link ^ Version used by POPFile 1.1.^ Description ^+^ Plugin Link ^ Version used by POPFile 1.1.^ Description ^
 | [[http://nsis.sourceforge.net/AccessControl_plug-in| AccessControl]]            | 5 November 2009 (current version) | Access Control List (ACL) management | | [[http://nsis.sourceforge.net/AccessControl_plug-in| AccessControl]]            | 5 November 2009 (current version) | Access Control List (ACL) management |
 | [[http://nsis.sourceforge.net/DumpLog_plug-in| DumpLog]]                        | v1.0 (current version) | Dump the log of the installer (installer details) to a file |    | [[http://nsis.sourceforge.net/DumpLog_plug-in| DumpLog]]                        | v1.0 (current version) | Dump the log of the installer (installer details) to a file |   
Line 231: Line 233:
 | [[http://nsis.sourceforge.net/UnTGZ_plug-in| untgz]]                              | v1.0.17 (current version) | Extracts files from a simple tarball | | [[http://nsis.sourceforge.net/UnTGZ_plug-in| untgz]]                              | v1.0.17 (current version) | Extracts files from a simple tarball |
  
-Version information is rarely included in these DLLs. Some plugins are rarely updated, others get frequent updates; this means that some plugins come in zip files which no longer match the current folder structure using by the NSIS compiler package.+Version information is not usually included in these DLLs so it can be difficult to identify a particular DLL. 
 + 
 +Some plugins are rarely updated, others get frequent updates; this means that some plugins come in zip files which no longer match the current folder structure using by the NSIS compiler package.
  
 To make it easier to build the installer and NSIS-based utilities for POPFile these extra plugins (and their associated documentation etc) have been repackaged as a single zip file ([[http://getpopfile.org/installer/plugins/1.1.1-repackaged-plugins.zip| 1.1.1-repackaged-plugins.zip]]) which can simply be unzipped into the main NSIS compiler folder (normally ''C:\Program Files\NSIS''). A complete set of the original plugin zip files is also available ([[http://getpopfile.org/installer/plugins/1.1.1-original-plugins.zip| 1.1.1-original-plugins.zip]]) as some of the plugins are not the most recent versions and are therefore harder to find. To make it easier to build the installer and NSIS-based utilities for POPFile these extra plugins (and their associated documentation etc) have been repackaged as a single zip file ([[http://getpopfile.org/installer/plugins/1.1.1-repackaged-plugins.zip| 1.1.1-repackaged-plugins.zip]]) which can simply be unzipped into the main NSIS compiler folder (normally ''C:\Program Files\NSIS''). A complete set of the original plugin zip files is also available ([[http://getpopfile.org/installer/plugins/1.1.1-original-plugins.zip| 1.1.1-original-plugins.zip]]) as some of the plugins are not the most recent versions and are therefore harder to find.
Line 297: Line 301:
 The release notes are not stored in the project's Subversion repository. The release notes are plain text files and should be stored in the ''C:\Build\POPFile\engine'' directory. The release notes are not stored in the project's Subversion repository. The release notes are plain text files and should be stored in the ''C:\Build\POPFile\engine'' directory.
  
-Use a text editor to create a plain text file called ''v1.1.1.change'' (for the English release notes) and another called ''v1.1.1.change.nihongo'' (for the Japanese release notes). Although the Windows installer can be built if the Japanese file is missing the cross-platform build will fail with an error message if the file cannot be found (so if no Japanese text is available just use a re-named copy of the ''v1.1.1.change'' file).+Use a text editor to create a plain text file called ''v1.1.2.change'' (for the English release notes) and another called ''v1.1.2.change.nihongo'' (for the Japanese release notes). Although the Windows installer can be built if the Japanese file is missing the cross-platform build will fail with an error message if the file cannot be found (so if no Japanese text is available just use a re-named copy of the ''v1.1.2.change'' file).
  
-If the files checked out from Subversion are marked with a release number other than 1.1.then change the filenames of these two files to match (e.g. ''v1.1.2.change'' and ''v1.1.2.change.nihongo'')+If the files checked out from Subversion are marked with a release number other than 1.1.then change the filenames of these two files to match (i.e. ''v1.1.2.change'' and ''v1.1.2.change.nihongo'')
  
 ====== Build the Perl-based programs (optional) ====== ====== Build the Perl-based programs (optional) ======
 
devel/windowsinstaller.1307099100.txt.gz · Last modified: 2011/06/03 13:05 (external edit)
Old revisions

Should you find anything in the documentation that is incomplete, unclear, outdated or just plain wrong, please let us know and leave a note in the Documentation Forum.

Recent changes RSS feed Donate Driven by DokuWiki
The content of this wiki is protected by the GNU Fee Documentation License