The quick installation instructions I gave you are on the Gambit github repo main page:
Quick-install instructions for a typical installation
git clone https://github.com/gambit/gambit.git cd gambit ./configure make -j8 current-gsc-boot make -j8 from-scratch make check make doc sudo make install
Detailed installation instructions are given in the file "INSTALL.txt”.
They are also in the INSTALL.txt file:
2) Quick-install instructions =============================
On most Unix platforms the system is easily built using configure/make. First the configure script is called as in:
% ./configure # add configure script options as required
If a specific release of the system was obtained as a compressed tar ball (.tgz extension) it can be built by invoking "make":
% make
If the source code was obtained by cloning the Gambit repository from github, more steps are required because some of the files have to be recreated as they may be stale.
The following commands should then be entered after executing the configure script to make sure that any stale .c files obtained from the repository are updated:
% make current-gsc-boot % make bootclean
The "make current-gsc-boot" builds the Gambit compiler that was current at the latest release and then uses it to compile the very latest sources of the compiler cloned from github. The "make bootclean" then removes all the generated .c files so that they will be created using the current gsc-boot compiler. Then the system can be built by invoking "make":
% make
These steps can be shortened to the following commands:
% ./configure # add configure script options as required % make current-gsc-boot % make from-scratch
This is an issue that keeps coming up regularly so I’ll see if there isn’t a way to give a big warning if a plain “make” is used when the sources are not consistent with a release point. Or maybe “make” can check if git is available, and if so do the appropriate procedure depending on the state of the sources (at a release point or not).
Marc
On Oct 6, 2017, at 9:54 AM, Ben mailist.ben@srctxt.com wrote:
to my defense: the INSTALL instructions of Gambit and its different combinations are not so trivial and this specific trinity cannot be found in this exact form. But it now that I know it makes perfect sense...
It did compile, even with the -j8 switch
thanks alot
On Fri, Oct 6, 2017, at 01:55 PM, Marc Feeley wrote:
Please read the build steps in the INSTALL.txt file… When freshly cloned from github, Gambit needs to be bootstrapped, so you need to *precisely* follow these steps:
% ./configure --enable-single-host CC=gcc-6 % make current-gsc-boot % make from-scratch
The “./configure …” followed by “make” that you are using is appropriate when building from a release of Gambit, for example v4.8.8 with no other patches applied.
So above the “make current-gsc-boot” builds the latest release of Gambit by using git to checkout the latest release (v4.8.8 currently) and then creates boot/gsc/gsc which is then used by the “make from-scratch” to bootstrap Gambit using the repo HEAD.
Marc
On Oct 6, 2017, at 3:51 AM, Ben mailist.ben@srctxt.com wrote:
maybe this is of interest ...
I couldn't install gcc-7 with brew but gcc-6.
This will not compile:
./configure --enable-single-host CC=gcc-6 make .... making all in lib gcc-6 -Wno-unused -Wno-write-strings -Wdisabled-optimization -O1 -fwrapv -fno-strict-aliasing -fno-trapping-math -fno-math-errno -fschedule-insns2 -fomit-frame-pointer -fPIC -fno-common -mieee-fp -mpc64 -I"../include" -c -o "_kernel.o" -I. -DHAVE_CONFIG_H -D___GAMBITDIR=""/usr/local/Gambit"" -D___SYS_TYPE_CPU=""x86_64"" -D___SYS_TYPE_VENDOR=""apple"" -D___SYS_TYPE_OS=""darwin16.7.0"" -D___CONFIGURE_COMMAND=""./configure '--enable-single-host' 'CC=gcc-6'"" -D___OBJ_EXTENSION="".o"" -D___EXE_EXTENSION="""" -D___BAT_EXTENSION="""" -D___PRIMAL _kernel.c -D___LIBRARY _kernel.c: In function '___H__20___kernel': _kernel.c:6346:27: error: void value not ignored as it ought to be ___FLONUM_VAL(___ARG2) = ___set_heartbeat_interval (___FLONUM_VAL(___ARG1)); ^ make[1]: *** [_kernel.o] Error 1 make: *** [all-recursive] Error 1
On Wed, Sep 20, 2017, at 04:37 PM, Marc Feeley wrote:
By default the configure script searches for gcc before looking for clang. However… X-code installs “clang” and also “gcc”, and that “gcc” is not the GNU gcc… it is a wrapper around clang/llvm. So to install the GNU gcc you need to use homebrew like this:
% brew install gcc-7
and then tell the configure script to use that compiler:
% ./configure --enable-single-host CC=gcc-7
You will notice a dramatic decrease in compilation time and in execution time (about 3 or 4 times faster execution if I recall correctly). On my machine a “make -j8” after a “make clean” takes 30 seconds.
Marc
On Sep 20, 2017, at 3:18 AM, Ben mailist.ben@srctxt.com wrote:
hi On macos sierra running the ./configure script gives me the following message:
*** The clang compiler is being used. Please be aware that the build
*** may take a very long time (over 30 minutes on a fairly fast
*** machine with clang 3.0). Configuring with GNU GCC will give a
*** faster build (1 min on the same machine with GNU GCC 4.2.1) and
*** the executable will be faster.
What can I do to enforce GCC? I cannot see any specific configure --options
Attached you'll find the entire configure log.
Thanks, Ben
<configure.log>_______________________________________________ Gambit-list mailing list Gambit-list@iro.umontreal.ca https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list