At 12:11 PM 10/2/2006, Marc Feeley wrote:
On 2-Oct-06, at 12:12 PM, Blake
McBride wrote:
That worked and I did get a good executable file. I had to link
with
gambc.lib, user32.lib and ws2_32.lib (two MS libs).
I don't get the whole "compile in the destination path"
stuff. That
means you have to re-build the whole thing whenever you want
to move anything (like to a drive with more space). It also
makes
distributing Gambit a real pain (use my path or else...).
Why don't you build with a default path and then use an environment
variable to specify the Gambit home? That's how everyone else
does it.
Including Gambit! Just read the Gambit-C manual page 21.
The
default installation directory is /usr/local/Gambit-C/VERSION, but
this can be changed at build time. The environment variable
that
Gambit uses is called GAMBCOPT and it contains the runtime options
that override the options that were used when the system was
built.
The runtime options on the command line (-:XXX) override the
GAMBCOPT. In other words the value of a runtime option will be
equal to
1) the value used at system build time
2) UNLESS the option is overriden by the GAMBCOPT environment
variable
3) UNLESS the option is overriden by the -:XXX runtime option on
the
command line
Here's an example with Unix:
$ gsi -e '(pp (path-expand "~~"))'
"/Users/feeley/Gambit-C/4.0b19/"
$ export GAMBCOPT=d0,=/Users/feeley/foo
$ gsi -e '(pp (path-expand "~~"))'
"/Users/feeley/foo/"
$ gsi -:=/Users/feeley/gambit -e '(pp (path-expand "~~"))'
"/Users/feeley/gambit/"
With the GAMBCOPT approach you can change more than the Gambit
installation directory. You can select the debugging level,
the
default file I/O encoding, etc.
That is great that Gambit has those options. We could have
avoided the
whole issue by repeating your above comments on page 1 of the manual
"Accessing The System". You shouldn't have to get to page
21 to figure
out basic installation.
The main thing, however, which held me up was the error message
"ERROR IN ##parameterize" when I had the directory path
wrong.
Since, as I would imagine, this could be a common error for new
users, it would be great if the system detected the incorrect path
and simply stated a clear message about the problem and, perhaps,
some possible solutions.
This kind of stuff often seems obvious and an anal hassle to the
author
or experienced users but makes a big difference to new users who
are trying to get up-to-speed quickly and evaluate a tool. Knowing,
out of the gate, that problems are adequately described gives one
confidence in the remainder of the tool.
Just some opinions. Gambit is a really great system!
Blake McBride