quarta-feira, 12 de setembro de 2012

Installing AWS on Windows

See also Installing on Linux

0. Pre-requisites

Cygwin, with Make. GNAT

1. Download and extract AWS

1.1 Download from libre.adacore.com

1.2 Extract. I have extracted to "C:\GNAT\AWS-2012" On my system I have the tree:

C:\GNAT
  |__2011
  |__2012
  |__AWS-2012 <= extract hereto (for example)

where "GNAT\2011", "GNAT\2012" are GNAT instalations. GNAT\2012 is the active compiler. I will install AWS 2012 in "GNAT\2012"

1.2.1 Change to "C:\GNAT\AWS-2012\x86-windows\2012\aws"

1.2.2 Extract aws-gpl-2.11.0-src.tgz in situ

2. Install

2.1 Change to "C:\GNAT\AWS-2012\x86-windows\2012\aws\aws-gpl-2.11.0-src\aws-gpl-2.11.0-src"

2.2 Edit "makefile.conf" as follows (don't change the rest)

prefix = /cygdrive/c/GNAT/2012/
ENABLE_SHARED = false
DEFAULT_LIBRARY_TYPE = static
XMLADA = false
ASIS = false
ZLIB = false
SOCKET = std

That is, change the shell/make expressions to constants. Note the "prefix" is in Cygwin format. Note ZLIB = false means AWS own library (I think). Note SOCKET = std means no SSL support. I have not been able to install AWS with SSL support on Windows yet.

2.3 Open a Cygwin terminal. Change to "/cygdrive/c/GNAT/AWS-2012/x86-windows/2012/aws/aws-gpl-2.11.0-src".

2.4 Issue the command "make setup" (this step probably can be skipped)
2.4.1 ignore the complaints "cannot generate system tags, the test are disable (sic)"

2.5 Issue the command "make setup build"
2.5.1 ignore the warnings about no compiler for the make language; see also 2.4.1

2.6 Issue the command "make install"

2.7 Edit the file "c:\GNAT\2012\lib\gnat\aws\aws_lib_shared.gpr" as follows (don't change the rest)

   LIBZ_Path := "c:\GNAT\2012\lib\aws\native\static";

That is, change the Cygwin format "/cygdrive/c/GNAT/2012//lib/aws/native/static" to Windows format.

2.7.1 Before GNAT (?) complained about "/cygdrive/c/GNAT/2012//lib/aws/native/static" missing. So I copied the corresponding GNAT\2011 onto it. But this step probably can be skipped.

Done:-)

3. Test

3.1 Build and run the supplied demos "hello_world", "agent"

See also Installing on Linux