[gambit-list] Error building Gambit

Guillaume Cartier gcartier at jazzscheme.org
Thu Dec 13 19:20:38 EST 2012


Did you restart from scratch (e.g. a fresh clone and not just make clean)
before trying the order I proposed?

All this is a bit of alchemy but I can tell you how I understand it:

Gambit is a self compiling system. Gambit needs gambit to compile itself.
When you download a release, it comes with a gsc.exe that it can use to
build itself but when you clone from the repo to get the latest, you have
only source code. That is what the make bootstrap does: it builds the
gsc.exe needed to build gambit from the c files contained in the repo. This
is why the logical order is: configure, make bootstrap, make.

PS: There also was a bug on Windows where you would get that _io.c not
found error but Marc told me it was fixed. In case it's not really fixed,
here's the workaround I used:

touch gsc-boot.bat

Guillaume

On Thu, Dec 13, 2012 at 5:56 PM, Steve Graham <jsgrahamus at yahoo.com> wrote:

> Same error.
>
> I cannot find the file _io.c anywhere in the gambit or lower directories,
> although I do see a os_io.c in the gambit/lib directory.
>
>
>   ------------------------------
> *From:* Guillaume Cartier <gcartier at jazzscheme.org>
> *To:* Steve Graham <jsgrahamus at yahoo.com>
> *Cc:* Gambit List <Gambit-list at iro.umontreal.ca>
> *Sent:* Thursday, December 13, 2012 1:40 PM
> *Subject:* Re: [gambit-list] Error building Gambit
>
> Try the following:
>
> ./configure
> make bootstrap
> make bootclean
> make
>
> On Thu, Dec 13, 2012 at 2:58 PM, Steve Graham <jsgrahamus at yahoo.com>wrote:
>
> I have an x86-64 system running Windows 7 Home Premium with Mingw.
>
> Just tried to build the latest system I downloaded with git:
>   git clone https://github.com/feeley/gambit.git
>   cd gambit
>
> There were no errors with:
> ./configure
> make
> make bootstrap
> make bootclean
>
> This is what happened when I ran make:
> sh-3.1$ make
> rm -f gsc-boot
> cp gsc-boot.unix gsc-boot
> chmod +x gsc-boot
> if test ".bat" != ""; then \
>           rm -f gsc-boot.bat; \
>           cp gsc-boot.bat.windows gsc-boot.bat; \
>         fi
> making all in include
> make[1]: Entering directory `/c/Users/Steve/Desktop/gambit/include'
> major=`echo v4.6.6 | sed -e "s/v//g" -e "s/\.[^.]*\.[^.]*//g"`; \
>         minor=`echo v4.6.6 | sed -e "s/v[^.]*\.//g" -e "s/\.[^.]*//g"`; \
>         revision=`echo v4.6.6 | sed -e "s/v[^.]*\.[^.]*\.//g" -e "s///g"`;
> \
>         version_num=`eval expr "\( 100000 \\* $major \) + \( 1000 \\*
> $minor \) + $revision"`; \
>         echo "#error \"The version indicated in ___VERSION is not
> supported by gambit.h\"" > gambit-not$version_num.h; \
>         echo "#error \"You are probably compiling C code generated by a
> Gambit compiler earlier or later than v4.6.6\"" >>
> gambit-not$version_num.h; \
>         echo "#error \"___VERSION will be set to $version_num to reduce
> other errors\"" >> gambit-not$version_num.h; \
>         echo "#undef ___VERSION" >> gambit-not$version_num.h; \
>         echo "#define ___VERSION $version_num" >>
> gambit-not$version_num.h; \
>         echo "#include \"gambit.h\"" >> gambit-not$version_num.h
> make[1]: Leaving directory `/c/Users/Steve/Desktop/gambit/include'
> making all in lib
> make[1]: Entering directory `/c/Users/Steve/Desktop/gambit/lib'
> ../gsc-boot -:~~bin=../bin,~~lib=../lib,~~include=../include -f -c  -check
> _io.scm
> gcc -D_WINDOWS  -Wno-unused -Wno-write-strings -O2 -fno-math-errno
> -fschedule-insns2 -fno-trapping-math -fno-strict-aliasing -fwrapv
> -fno-keep-inline-dllexport -fmodulo-sched -freschedule-modulo-sched
> uled-loops -fno-common -mieee-fp   -I"../include" -c -o "_io.o" -I.
> -DHAVE_CONFIG_H -D___GAMBCDIR="\"/usr/local/Gambit-C\""
> -D___SYS_TYPE_CPU="\"i686\"" -D___SYS_TYPE_VENDOR="\"pc\"" -D___SYS_TYPE_OS=
> "\"mingw32\"" -D___CONFIGURE_COMMAND="\"./configure '--enable-single-host'
> '--enable-c-opt' '--enable-gcc-opts'"\" -D___OBJ_EXTENSION="\".o\""
> -D___EXE_EXTENSION="\".exe\"" -D___BAT_EXTENSION="\".bat\
> "" -D___PRIMAL _io.c -D___LIBRARY
> gcc.exe: error: _io.c: No such file or directory
> gcc.exe: fatal error: no input files
> compilation terminated.
> make[1]: *** [_io.o] Error 1
> make[1]: Leaving directory `/c/Users/Steve/Desktop/gambit/lib'
> make: *** [all-recursive] Error 1
> sh-3.1$
>
> Any ideas what went wrong?
>
>
> Steve
>
> _______________________________________________
> Gambit-list mailing list
> Gambit-list at iro.umontreal.ca
> https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list
>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.iro.umontreal.ca/pipermail/gambit-list/attachments/20121213/c9cf0d3a/attachment.htm>


More information about the Gambit-list mailing list