Closed philsuero closed 4 years ago
Also, please note, I am using a GNU GCC (according to homebrew) and the script complains it is a CLANG GCC.
Edit: My bad. There was a problem with my paste on terminal. I should set the CC
flag, not the C
one.
The rest of the issue remains.
Could you put the whole trace of the build on a pastebin? I suspect that the messages you are seeing come from the bootstrap (which does another ./configure
). I always put the CC=gcc-9
at the end of the configure command, and maybe this propagates it better to the second ./configure
.
So, this is the outuput for the ./configure
script.
And this is the output of the make
Edit: For other people's future reference, I'm adding the content in files, for the case the pastebins expires.
configure-output-first-reply.txt make-output-first-reply.txt
You are still using C=...
instead of CC=...
oh gosh.
Ok, I ran it again. I double checked this time.
But still, on lines 381 and 1028 of make
there were --enable-single-host
warnings, even if I configure it without --enable-cplusplus
.
$ ./configure --enable-single-host \
> --prefix=/path/to/gambit-test \
> CC=/usr/local/Cellar/gcc/9.3.0/bin/gcc-9 \
> CXX=/usr/local/Cellar/gcc/9.3.0/bin/g++-9 \
> CXXFLAGS="-std=c++11 -Og -g -fstack-protector-all"
Here are the outputs: configure-output.txt make-output.txt
These are normal messages because of the bootstrapping process which does 2 runs of ./configure (in the boot subdirectory) for the bootstrap compiler in addition to the main run of ./configure.
The configure flags that are specified at the main run of ./configure are not propagated to the "boot" runs of ./configure for the following reasons:
1) the boot directory contains a previous release of Gambit that may not support the same configure flags as the main repository so it would be wrong to blindly propagate configure options to the bootstrap runs of ./configure
2) the use of --enable-single-host may cause bootstrapping problems because some C compilers will fail to build the gsc-boot compiler, either because it requires too much memory or it triggers a bug in the C compiler (I have seen it before)
So it is safer to build the gsc-boot with configure flags that are known to not cause issues.
Note however that after building gsc-boot the main Gambit will be built with the configure options that were specified initially, so in the end you get what you want.
Should some of this be noted in INSTALL.txt (or perhaps not, I don't know much about Gambit to tell, just a suggestion)
Tested on: Darwin 18.7.0 Darwin Kernel Version 18.7.0 Linux 4.19.0-8-amd64 #1 SMP Debian 4.19.98-1 (2020-01-26) x86-64 GNU/Linux
Latest commit: 8ab6cc3e94676ef4961f992d595c327932edc2fb 4.9.3 commit: baf7de67f6d800821412fe83a8d9e9e09faeb490
Issue:
--enable-single-host
option not recognized when using the following options on the latest commit:The following message appears on
make
output on mac and linux only on the latest commit (on gambit 4.9.3, this message is not showed):But, when running
configure
without the--enable-cplusplus
:It gives me the following message on
configure
only on mac (no message about--enable-single-host
shows on linux here):