User Tools

Site Tools


en:developer:windows_source_install

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
en:developer:windows_source_install [2017/02/20 05:15] – [Current instructions] anupamaen:developer:windows_source_install [2023/03/19 21:17] (current) kjdon
Line 1: Line 1:
 +
 +
 ====== Source Installation on Windows ====== ====== Source Installation on Windows ======
  
 ======Current instructions====== ======Current instructions======
-<TABAREA tabs="Greenstone3,Greenstone2"> +<tabbox Greenstone3>
-<TAB>+
 Tested on Windows (Vista) 64 bit. Tested on Windows (Vista) 64 bit.
  
Line 10: Line 11:
   * An SVN client installed, which can be downloaded from http://subversion.apache.org/packages.html. The instructions below assume a command-line SVN client.    * An SVN client installed, which can be downloaded from http://subversion.apache.org/packages.html. The instructions below assume a command-line SVN client. 
   * Java JDK 6.x or later. For compiling on Windows 64 bit, need the 64 bit version of JDK. For compiling Greenstone 3.06 and onwards, need JDK 7.x or later.   * Java JDK 6.x or later. For compiling on Windows 64 bit, need the 64 bit version of JDK. For compiling Greenstone 3.06 and onwards, need JDK 7.x or later.
-  * PERL (ActivePerl for Windows)+  * PERL: we used to use ActivePerl for Windows. Now we provide our own modified version of [[http://trac.greenstone.org/browser/main/trunk/release-kits/shared/windows/perl.zip|Strawberry Perl]] that has everything we need so far.
   * **Visual Studio** 8 or later for compiling C++ code. (We haven't tried it with Microsoft's free Visual Studio Express yet.) For 64-bit Windows, we found that Visual Studio versions 9 and 12 worked to compile GS3 from SVN.   * **Visual Studio** 8 or later for compiling C++ code. (We haven't tried it with Microsoft's free Visual Studio Express yet.) For 64-bit Windows, we found that Visual Studio versions 9 and 12 worked to compile GS3 from SVN.
   * If you want to compile GS2 or GS3 with debugging on, you will also need Microsoft SDK   * If you want to compile GS2 or GS3 with debugging on, you will also need Microsoft SDK
Line 20: Line 21:
  
 <code> <code>
-svn co http://svn.greenstone.org/main/trunk/greenstone3 gs3-svn+svn co https://svn.greenstone.org/main/trunk/greenstone3 gs3-svn
 cd gs3-svn cd gs3-svn
-svn co http://svn.greenstone.org/local/greenstone3/<OS-bitness folder*> local+svn co https://svn.greenstone.org/local/greenstone3/<OS-bitness folder*> local
 </code> </code>
 For the OS-bitness folder, you can at present choose from "darwin-64bit", "linux-32bit", "linux-64bit", "windows-64bit" For the OS-bitness folder, you can at present choose from "darwin-64bit", "linux-32bit", "linux-64bit", "windows-64bit"
  
-Use a text editor to edit ''local/gs3-setup.bat'' and ''local/gs3-devel.bat'' to contain the paths to Java, Perl, Ant, Visual Studio's VC folder on //your// system. We found that 32 bit MS VS 9.0 works in our case, if we set gs3-devel.bat to point to C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC so that the script can then issue ''call vsvarsall.bat amd64'' to get it working for 64 bit machines. +Use a text editor to edit ''local/gs3-setup.bat'' and ''local/gs3-devel.bat'' to contain the paths to Java, Perl, Ant, Visual Studio's VC folder on //your// system. We found that **32 bit** MS VS 9.0 and 12.0 works in our case, if we set gs3-devel.bat to point to C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC so that the script can then issue ''call vsvarsall.bat amd64'' to get it working for 64 bit machines. 
  
 Then you're ready to proceed by running the //toplevel// gs3-devel.bat: Then you're ready to proceed by running the //toplevel// gs3-devel.bat:
Line 36: Line 37:
 (The gs3-devel.bat will print a file not found error on Windows, since gs3-devel.bat runs gs3-setup.bat which refers to some files that the ant prepare step has yet to checkout.) (The gs3-devel.bat will print a file not found error on Windows, since gs3-devel.bat runs gs3-setup.bat which refers to some files that the ant prepare step has yet to checkout.)
  
-Nextopen a new terminal, go back to into the SVN Greenstone 3 checkout directory and run the devel script again before running the actual compile command:+Once the ''ant prepare'' step has //finished//: 
 + 
 +
 +If you're using Visual Studio 14 ([[https://en.wikipedia.org/wiki/Microsoft_Visual_Studio#History|a.k.a. Visual Studio 2015]]; seems to also work with VS15/VS2017), then before proceeding, backup your windows iconv.zip and rename iconv-winVS14-VS2015-plus.zip as the new iconv.zip, as below. (For details on which libiconv this uses and how it was modified to get it to work with VS14refer [[http://trac.greenstone.org/browser/main/trunk/greenstone2/common-src/indexers/packages/windows/iconv/GS-README-VS14-VS2015-AND-LATER.txt|to this]].) 
 +<code> 
 +pushd gs2build\common-src\indexers\packages\windows\iconv 
 +move iconv.zip iconv_preVS14.zip 
 +move iconv-winVS14-VS2015-plus.zip iconv.zip 
 +rmdir /s /q iconv 
 +popd 
 +</code> 
 +
 + 
 +Open **a new terminal**, go back to into the SVN Greenstone 3 checkout directory and run the devel script again before running the actual compile command:
 <code> <code>
 gs3-devel.bat gs3-devel.bat
Line 44: Line 58:
 **Note:** after compiling with the above steps, your terminal would be left in a state where running GLI would not be able to locate the Greenstone building scripts like ''import.pl''. Therefore, when compilation is finished, open a fresh DOS prompt to run GLI from. **Note:** after compiling with the above steps, your terminal would be left in a state where running GLI would not be able to locate the Greenstone building scripts like ''import.pl''. Therefore, when compilation is finished, open a fresh DOS prompt to run GLI from.
  
-</TAB> +<tabbox Greenstone2
-<!-- ######################################################################################## +On 64 bit windows, earlier versions of GS2 on SVN used to have an issue with race conditions (random failing due to asynchronous behaviour) when compiling up apache-httpd as part of GS2. Refer to [[http://wiki.greenstone.org/doku.php?id=en:developer:compiling_apache&#compiling_the_apache-httpd_included_with_gs2_on_64_bit_windows_7|Compiling the apache-httpd included with GS2 on 64 bit Windows 7]]. The following instructions were found to generally work with these older versions, but sometimes required recompiling when the first attempt failed.
-############################################################################################## +
-############################################################################################ +
-#########################################################################################--> +
-<TAB+
-On 64 bit windows, there is an issue with race conditions (random failing due to asynchronous behaviour) when compiling up apache-httpd as part of GS2. Refer to [[http://wiki.greenstone.org/doku.php?id=en:developer:compiling_apache&#compiling_the_apache-httpd_included_with_gs2_on_64_bit_windows_7|Compiling the apache-httpd included with GS2 on 64 bit Windows 7]].+
  
-The following instructions were found to generally work.+Fixes to avoid the race conditions were made by introducing 2 scripts [[http://trac.greenstone.org/browser/main/trunk/greenstone2/runtime-src/packages/apache-httpd/adjust-winmak-files.bat|adjust-winmak-files.bat]] and [[http://trac.greenstone.org/browser/main/trunk/greenstone2/runtime-src/packages/apache-httpd/mod_winmak_file.awk|mod_winmak_file.awk]] after which the following instructions worked all the time.
  
 **You need:** **You need:**
Line 62: Line 71:
   * If you want to compile GS2 with debugging on, you will also need Microsoft SDK   * If you want to compile GS2 with debugging on, you will also need Microsoft SDK
  
-  - Checkout greenstone2 from SVN:\\ <code> svn co http://svn.greenstone.org/main/trunk/greenstone3 gs3-svn</code>+  - Checkout greenstone2 from SVN:\\ <code> svn co http://svn.greenstone.org/main/trunk/greenstone2 gs2-svn</code> 
 +  - **NOTE:** If you're using Visual Studio 14 ([[https://en.wikipedia.org/wiki/Microsoft_Visual_Studio#History|a.k.a. Visual Studio 2015]]), then before proceeding, backup your windows iconv.zip and rename iconv-winVS14-VS2015-plus.zip as the new iconv.zip, as below. (For details on which libiconv this uses and how it was modified to get it to work with VS14, refer [[http://trac.greenstone.org/browser/main/trunk/greenstone2/common-src/indexers/packages/windows/iconv/GS-README-VS14-VS2015-AND-LATER.txt|to this]].)\\ <code> 
 +cd gs2-svn 
 +pushd common-src\indexers\packages\windows\iconv 
 +move iconv.zip iconv_preVS14.zip 
 +move iconv-winVS14-VS2015-plus.zip iconv.zip 
 +rmdir /s /q iconv 
 +popd 
 +</code>
   - Checkout the appropriate subfolder for your OS and bit architecture from http://svn.greenstone.org/local/greenstone2/ into your greenstone 2 checkout's toplevel folder. Name the downloaded subfolder ''local''. If you're on Windows 64 bit, then you'd do:\\ <code>svn co http://svn.greenstone.org/local/greenstone2/windows-64bit local</code>   - Checkout the appropriate subfolder for your OS and bit architecture from http://svn.greenstone.org/local/greenstone2/ into your greenstone 2 checkout's toplevel folder. Name the downloaded subfolder ''local''. If you're on Windows 64 bit, then you'd do:\\ <code>svn co http://svn.greenstone.org/local/greenstone2/windows-64bit local</code>
   - On 64 bit Windows, edit ''local/setup.bat'' to set the environment variables to where you have got the following installed on your system: SVN, Java SDK 7+, the Greenstone customised Strawberry Perl (download it from [[http://trac.greenstone.org/browser/main/trunk/release-kits/shared/windows/perl.zip?rev=head|here]]), Visual Studio 9+ (Microsoft SDK is no longer needed even when the debug flag is turned on).\\ On 32 bit Windows, rename the ''local/setup32.bat'' script to ''local/setup.bat'', then edit it to set the environment variables according to your system.   - On 64 bit Windows, edit ''local/setup.bat'' to set the environment variables to where you have got the following installed on your system: SVN, Java SDK 7+, the Greenstone customised Strawberry Perl (download it from [[http://trac.greenstone.org/browser/main/trunk/release-kits/shared/windows/perl.zip?rev=head|here]]), Visual Studio 9+ (Microsoft SDK is no longer needed even when the debug flag is turned on).\\ On 32 bit Windows, rename the ''local/setup32.bat'' script to ''local/setup.bat'', then edit it to set the environment variables according to your system.
-  - Run when the top level GS2's ''setup.bat'', which will automatically run ''local/setup.bat'' too:\\ <code>cd <your GS2 svn checkout folder>+  - Run the top level GS2's ''setup.bat'', which will automatically run ''local/setup.bat'' too:\\ <code>cd <your GS2 svn checked out folder>
 setup.bat</code> setup.bat</code>
-  - Finally, still from your top level GS2 folder, run\\ <code>makegs2x64.bat</code> Type "Y" to Extract All, then when the DOS prompt display asks what you want to compile up, type "4" to compile all without debugging, or type "5" to compile everything with debugging on. (Type "6" to //clean// compiled files before recompilation if you want to recompile from scratch). +  - Finally, still from your top level GS2 folder, run\\ <code>makegs2x64.bat</code> Type "Y" to Extract All, then when the DOS prompt display asks what you want to compile up, type "4" to compile all without debugging, or type "5" to compile everything with debugging on. (Type "6" to //clean// compiled files before recompilation if you want to recompile from scratch).\\ **Note:**\\ In GS2 SVN checkouts from **before changeset [[http://trac.greenstone.org/changeset/31428|31428]]**, compilation on 64 bit Windows could still fail with error messages as described [[http://wiki.greenstone.org/doku.php?id=en:developer:compiling_apache&#compiling_the_apache-httpd_included_with_gs2_on_64_bit_windows_7|here]], which indicates that the race condition has struck. In that case, try deleting the ''apache-httpd\windows\error'' folder if it has been generated, or all of the ''apache-httpd'' folder and run ''makegs2x64.bat'' again, choosing the same options as before. If the 'error' folder or ''apache-httpd'' folder did not exist and therefore can't be deleted, then just re-run makegs2x64.bat again. If that fails, run ''makegs2x64.bat'' and select the ''clean'' command (option 6) and then re-run ''makegs2x64.bat'' to re-compile from scratch. If doing so in a fresh command prompt, remember to run the <del>''devel64-in32mode.bat''</del> ''setup.bat'' script in ''local'' before running ''makegs2x64.bat''. 
- +  - Finally, check out and compile GLI:\\ <code> 
- +svn co https://svn.greenstone.org/main/trunk/gli 
-In GS2 SVN checkouts from **before changeset [[http://trac.greenstone.org/changeset/31428|31428]], compilation on 64 bit Windows could still fail with error messages as described [[http://wiki.greenstone.org/doku.php?id=en:developer:compiling_apache&#compiling_the_apache-httpd_included_with_gs2_on_64_bit_windows_7|here]]**, which indicates that the race condition has struck. In that case, try deleting the ''apache-httpd\windows\error'' folder if it has been generated, or all of the ''apache-httpd'' folder and run ''makegs2x64.bat'' again, choosing the same options as before. If the 'error' folder or ''apache-httpd'' folder did not exist and therefore can't be deleted, then just re-run makegs2x64.bat again. If that fails, run ''makegs2x64.bat'' and select the ''clean'' command (option 6) and then re-run ''makegs2x64.bat'' to re-compile from scratch. If doing so in a fresh command prompt, remember to run the 'devel64-in32mode.bat'' script in ''local'' before running ''makegs2x64.bat''.+cd gli 
 +makegli.bat 
 +makejar.bat 
 +</code>
  
-</TAB> +</tabbox>
-</TABAREA>+
  
  
 ======Old instructions====== ======Old instructions======
  
-<TABAREA tabs="Greenstone3,Greenstone2"> +<tabbox Greenstone3>
-<TAB>+
 **You NEED Visual Studio C++.** (We haven't tried it with Microsoft's free Visual Studio Express yet.) **You NEED Visual Studio C++.** (We haven't tried it with Microsoft's free Visual Studio Express yet.)
  
Line 176: Line 194:
 =====Advanced===== =====Advanced=====
 For information on further configuration of the installation (such as changing the port number or host name of the web server), see For information on further configuration of the installation (such as changing the port number or host name of the web server), see
-[[en:developer:linux_source_install#advanced|Advanced]], the Advanced section of the walkthrough of installing GS3 from SVN for Linux.+[[en:developer:linux_source_install_gs3#advanced|Advanced]], the Advanced section of the walkthrough of installing GS3 from SVN for Linux.
  
  
-</TAB> +<tabbox Greenstone2>
-<!-- ######################################################################################## +
-############################################################################################## +
-############################################################################################ +
-#########################################################################################--> +
-<TAB>+
 You will need: You will need:
   * Visual Studio, to use its compiling capabilities which work with the Windows makefiles of Greenstone   * Visual Studio, to use its compiling capabilities which work with the Windows makefiles of Greenstone
Line 320: Line 333:
  
  
-</TAB+</tabbox
-</TABAREA>+
en/developer/windows_source_install.1487567733.txt.gz · Last modified: 2017/02/20 05:15 by anupama