mit-scheme-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: MIT Scheme 11.1 fails to build because of Werror


From: Schnoering Gabriel
Subject: Re: MIT Scheme 11.1 fails to build because of Werror
Date: Wed, 3 Feb 2021 12:33:08 +0100
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.7.0

Dear Taylor,

I have ncurses and the related headers installed.

I tried the procedure again with an older gcc (7) for the same result (Werror complaints).

I also tried on Arch linux and it worked fine, without build errors.

I finally got mit-scheme-11 REPL to start on Gentoo by taking the prebuilt version (mit-scheme-11.1-x86-64.tar.gz) and skipping Werror during the build. Looks like some headers issues combined with the very old C code of these two files and compiler configuration.

scmutils doesn't run on the new version though.

Bad compiled-code version in FASL File: mit-scheme-x86-64-11.1/mechanics.com
File has: compiled-code interface 3; architecture 14.
Expected: compiled-code interface 4; architecture 14.
Microcode Error: No error handlers.
Error code 0x3a (fasload-compiled-mismatch)

I will stick to the older version for now.

Best,
Gabriel

On 2/1/2021 5:46 PM, Taylor R Campbell wrote:
Date: Mon, 1 Feb 2021 13:30:00 +0100
From: Gabriel Schnoering <gabriel.schnoering@gmail.com>

At first the package doesn't compile with gcc 10.2 (I guess it would be 
similar with previous versions) because of Werror in the microcode/ folder
and in particular termcap.c. Some of the issues reported are quite 
serious I guess such as casting a 64 bits pointer into a 32 bits int.
Try installing ncurses, termcap, or curses (development headers and
libraries)?

(We should maybe just get rid of the ancient compatibility termcap.c,
and either make termcap/curses mandatory or kick it out of the
microcode into a plugin, so people stop tripping over this.)

When I skip Werror from the configure.ac/Makefile files it does build 
but fails later building make.com.
To build 11.1 from 10.x, you need to do a cross-build, even if you're
building for x86 on x86:

cd mit-scheme-11.1/src
./configure --enable-cross-compiling --enable-native-code=x86-64
make
make install

(This is because the compiled code ABI changed, so old .com files
can't be run by new Schemes and vice versa.)

reply via email to

[Prev in Thread] Current Thread [Next in Thread]