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
- the value used at system build time
- UNLESS the option is overriden by the GAMBCOPT environment variable
- 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