[AWS] building AWS error

David Marceau davidmarceau@sympatico.ca
Sat, 12 Jul 2003 02:48:50 -0400


Ok here is the problem:

"Artola Zubillaga, Xabier" wrote:
> process_begin: CreateProcess((null), cp ../include/aws-net-std-gnat.adb
> aws-net-std.adb, ...) failed.

My point of view:
-----------------
The "make", "cp", "rm", "ar", "grep", "diff", "sed" tools weren't in
your path.
This is why "CreateProcess( (null), ...)" actually failed.

Solution:
--------
Here is the recipe I would recommend being in the makefiles and the
configuration files:
0)install "msys" unix tools for windows os.
1)set the ADA_INCLUDE_PATH to wherever /adainclude is
2)set the ADA_OBJECTS_PATH to wherever /adalib is
3)set the PATH to point typically to c:/gnat/bin
4)In the makefile.conf file declare the following variables:
AR=c:\gnat\bin\ar
CP=c:\msys\1.0\bin\cp -p
RM=c:\msys\1.0\bin\rm
MAKE=c:\gnat\bin\make
GREP=c:\msys\1.0\bin\grep
DIFF=c:\msys\1.0\bin\diff
SED=c:\msys\1.0\bin\sed

4.2)In all the existing makefiles in all of the subdirectories, look for
each of these binaries(ar, cp, rm, make, grep, diff, sed) and replace
them with the $(ENV_VAR_EQUIVALENT) as declared the preceding step.
5)In each of the adawebserver sub directories, include the above
makefile.conf.  Do this by adding the following line at the beginning of
every existing makefile in every subdirectory:
include ../makefile.conf
6)make clean
7)make build
8)voila that's all.

Please note you might have to tweak the makefile to make it use the
gnat.sockets api instead of adasockets.
If I remember correctly the ADASOCKETS= should be empty in order for it
to use the default gnat.sockets api.  Any other errors are probably
because there aren't enough directories added to your ada objects path
or your ada include path as mentioned above.

Since you are running under windows, I do highly recommend you take a
good look at the ICF service documentation from MS and then enable it. 
You may consider ICF if I understand correctly a "personal firewall"
delivered by MS.  If you don't use theirs do consider using something
along the same lines.
Recently I have encountered some people attempting to intrude on many
different ports including netbios and microsoft - among many others. 
The other suggestion is winpcap along with a gui front end called
ethereal will help you at least monitor this activity.  In linux I would
append the attacking ip addresses to hosts.deny and then killall -HUP
xinetd.  There are guis in MS to do about the same thing and it's for
you to discover them :)

As a complete tangent I recently tried the new version of gtkada for
windows.  Do have a look at the gtktest example.  It is quite a variety
of capability being demonstrated here.  I personally like the canvas
demo with graphs of nodes and the links between them and the dynamic
creation and rearrangement of them.  What's most interesting is that
gtkada runs well in linux also.  The same demo testgtk runs also there
in fact.  There's a lot of stuff there comparable to the jdk demos for
jfc and java2d.

Cheers,
David Marceau