Guillaume,

   Yes, I did delete the directory and cloned a new file from github.

   I assume you execute the workaround just before the offending make, right?  Does that create the .c file?  Or the .bat file?

   Not sure how it might help.

   Worth a shot, though.


Thanks, Steve


From: Guillaume Cartier <gcartier@jazzscheme.org>
To: Steve Graham <jsgrahamus@yahoo.com>
Cc: Gambit List <Gambit-list@iro.umontreal.ca>
Sent: Thursday, December 13, 2012 5:20 PM
Subject: Re: [gambit-list] Error building Gambit

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@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@jazzscheme.org>
To: Steve Graham <jsgrahamus@yahoo.com>
Cc: Gambit List <Gambit-list@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@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@iro.umontreal.ca
https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list