Windows-installer

Uit EekBoek
Naar navigatie springenNaar zoeken springen

Deze pagina beoogt een dump te zijn van het MAKEN van een self-installing package voor EekBoek voor Windows.

Er komt een aparte pagina voor het installeren van het resultaat van deze pagina

Work in progress, deze pagina is nog niet volledig of getest

Kies voor x86 (32 bit) of x64 (64 bit). Ik noem steeds de 64 bit variant. Aanpassen waar gewenst. (x64 -> x86)

download en installeer cygwin

Cygwin is een unix emulator onder windows. Het maakt allerlei (command-line-)utilities beschikbaar, zoals zip, unzip, git etc.

Installeer vanaf http://www.cygwin.com/

http://cygwin.com/setup.exe

Kies in ieder geval zip en unzip (uit de categorie archive) en git (uit de categorie devel).

Cygwin installeert ook een versie van Perl, die we niet gaan gebruiken.


Download en installateer CitrusPerl

http://www.citrusperl.com/download/CitrusPerl/citrusperl-standard-51402-20812-msw-x64-014.zip

  • Sla de zipfile op, en pak de zipfile uit, bijvoorbeeld in de c:\eekboek directory. Er onstaat een directory:

C:\eekboek\citrusperl-standard-51402-20812-msw-x64-014\CitrusPerl\

  • Start de tool citrusutils, in

C:\eekboek\citrusperl-standard-51402-20812-msw-x64-014\CitrusPerl\bin\citrusutils.exe

  • Hiermee zetten we een aantal paden goed, en installeren we MinGW (de GCC compiler voor Windows, benodigd vanwege dmake.exe).
  • In het eerste tabblad: klik SET GCC en kies voor de bovenste optie, "download the binary MinGW distribution used to build this"
  • Selecteer een pad om uit te pakken en neer te zetten, bijvoorbeeld C:\eekboek\mingw-x64\
  • Klik ook eenmaal op de knop met de twee pijltjes onder de SET GCC button. (Niet zeker of dat nodig is).
  • Sluit de CitrusUtils applicatie af.


Download en bouw EekBoek

  • Maak een directory c:\eekboek\builddir64\
  • start een terminal vanuit CitrusPerl, door

C:\eekboek\citrusperl-standard-51402-20812-msw-x64-014\CitrusPerl\bin\citrusterm.bat te runnen.

binnen deze terminal de volgende commando's:

cpan Term::ReadKey (eenmalig, dit geeft een hele lijst met output, en moet eindigen met OK)
cd c:\eekboek\builddir64\
git clone -b btwcodes git://eekboek.git.sourceforge.net/gitroot/eekboek/eekboek
cd eekboek

wijzig op regel 26 van git-version.pl

2>/dev/null 

in

2>nul 

(tenzij Johan iets slims bedenkt!)

make bootstrap <er missen een aantal files, dat is bekend>
perl Build.PL 
Build 
Build test 

<een aantal test faalt, dat komt doordat er geen externe database server beschikbaar is, en doordat er files missen>

Een voorbeeld van het resultaat:

Test Summary Report
-------------------
t\91_ivp_sqlite.t   (Wstat: 2304 Tests: 129 Failed: 9)
  Failed tests:  24-26, 64-66, 104-106
  Non-zero exit status: 9
t\admtest_result.t  (Wstat: 256 Tests: 23 Failed: 1)
  Failed test:  12
  Non-zero exit status: 1
Files=11, Tests=582, 276 wallclock secs ( 0.16 usr +  0.05 sys =  0.20 CPU)
Result: FAIL
Failed 2/11 test programs. 10/582 subtests failed.

Hoewel er dus fouten zijn, gaan we toch door.

Mocht je EekBoek niet willen inpakken, maar zelf willen gebruiken, dan kun je hier stoppen.

Download en installateer Cava

  • Download Cava

[Voor de 32 bit variant heb ik versie 72 gebruikt!]

http://www.citrusperl.com/download/CavaPackager/cava-packager-msw-x64-2-0-76.exe

Run de installer, als administrator (rechtsklikken, Run as Administrator), anders kunnen de benodigde directory's niet worden aangemaakt.


Download en installateer InnoSetup

Er is geen aparte 64 bit versie van InnoSetup.

Ik heb gekozen voor de unicode verie, van een Nederlandse mirror.

http://www.jrsoftware.org/download.php/is-unicode.exe?site=2

Voer het bestand uit, accepteer de licentie en de locatie. Aan het einde is het niet nodig om innosetup te starten. Het wordt door Cava onderwater gebruikt.


Inpakken met Cava

Start Cava Pacakager 2.0 vanuit het start menu. Er kunnen helaas geen 64 en 32 bit varianten tegelijk geïnstalleerd zijn.

<hier de opmerkingen van Johan toevoegen>

zipfile van Johan uitgepakt als c:\eekboek\ebcava64

innosetup file verwijderd.

Cava opstarten. Cava file (c:\eekboek\ebcava64\cava20.cpkgproj) openen

Interperter goedzetten in menu Eekboek, laatste tab.

(C:\eekboek\citrusperl-standard-51402-20812-msw-x64-014\CitrusPerl\bin\perl.exe) Klaagt ergens over..

Voeg hier ook c:\eekboek\builddir64\eekboek\lib\ en C:\eekboek\builddir64\eekboek\lib\EB\CPAN toe aan "extra module search paths"


Menu scripts -> script locatie goedzetten voor beide scripts. c:\eekboek\builddir64\eekboek\scripts

Menu resources -> toevoegen met knop ... C:\eekboek\builddir64\eekboek\lib\EB\res

Menu user -> toevoegen met knop ... C:\eekboek\builddir64\eekboek\lib\EB\user

menu installer -> check 'require administrator privileges to install'