QiII1.07 fails to run with SBCL 1.0.45

32 views
Skip to first unread message

Thomas Bartscher

unread,
Feb 20, 2011, 7:56:12 AM2/20/11
to Qilang
When running Qi-Linux-SBCL I only get an error message:
"fatal error encountered in SBCL pid 3810(tid 140737353955072):
can't load .core for different runtime, sorry"
I've got no idea how to fix this and I would be thankful for any
directions.

Mark Tarver

unread,
Feb 20, 2011, 8:14:37 AM2/20/11
to Qilang
I can't help you on that one Thomas, I abjured using (Ubuntu) Linux
some time back - it was a PITA. So much did not work. I have only
three comments.

1. It might be useful to include what distro of Linux you are using.
Perhaps somebody has already installed Qi under your version.

2. In general I have found that CLisp, while about 4X slower than
SBCL, is more stable than SBCL.

3. A total guess here - ok? The error might relate to the attempt to
save Qi when installed, If you get as far as loading
export_load21.lsp then it is almost certainly a build error and the
SBCL has failed to build a working image for you. If so comment out

(qi::save)

in the install.lsp. It will work fine except you will have to
install Qi whenever you want to run it - which is not too bad if you
don't mind waiting 30sec.

Mark


Mark

On Feb 20, 12:56 pm, Thomas Bartscher

Mark Tarver

unread,
Feb 20, 2011, 9:23:18 AM2/20/11
to Qilang
Actually typing 'fatal error encountered in SBCL' into Google gave the
following thread (8 May 2010)

http://linux.derkeiler.com/Mailing-Lists/Fedora/2010-05/msg00408.html

QUOTE
2010/5/7 Rex Dieter <rdieter@xxxxxxxxxxxx>:

Hiisi wrote:

Dear users!
Recently maxima/XMaxima/wxMaxima got broken on my machine with the
following message when started from terminal:
$ maxima
fatal error encountered in SBCL pid 15897(tid 3086857920):
can't load .core for different runtime, sorry

Tracking here,
https://bugzilla.redhat.com/show_bug.cgi?id=589087

I'll try to get this fixed soon.

Thank you, Rex. Downgrading sbcl solved the problem.
--
Hiisi.
UNQUOTE

Sounds like an SBCL problem. Perhaps you need to follow the advice
above.

Mark

Harold Ancell

unread,
Feb 20, 2011, 9:34:08 AM2/20/11
to Qilang
At 07:14 AM 2/20/2011, Mark Tarver wrote:
>I can't help you on that one Thomas, I abjured using (Ubuntu) Linux
>some time back - it was a PITA. So much did not work.

Ubuntu is as far as I can tell born broken: its
development model is to every 6 months take a snapshot of
Debian *unstable*, furiously try to stabilize it and then
ship whatever they have, broken or not (see e.g. Hardy
Heron) on the six month deadline. Given that the Debian
model is to take upstream software and "fix" it without
carefully coordinating with the upstream suppliers (see
their breaking OpenSSL's PRNG by removing almost all the
randomness in the seed, producing trivially breakable
certificates for 2 years ... I gather that's the
absolutely worst open source screwup in history), well ...
it you use Ubuntu you're asking for trouble even if you
didn't know it.

>I have only three comments.
>
>1. It might be useful to include what distro of Linux you are using.
>Perhaps somebody has already installed Qi under your version.

I got Qi II 1.07 running on SBCL 1.0.37 on 64 bit Debian 5
lenny without any problem.

I also note that SBCL 1.0.46 was released late last night. It
wouldn't be a big deal for me to try that version if my system
is remotely like the problem one.

>2. In general I have found that CLisp, while about 4X slower than
>SBCL, is more stable than SBCL.

SBCL among other thing optimizes for run time performance (one
reason ITA uses it for QPX (another is that they started with
its direct ancestor, CMU CL)), and as a co-worker of mine liked
to say, speed kills.

- Harold

Thomas Bartscher

unread,
Feb 20, 2011, 1:41:22 PM2/20/11
to Qilang
As I seem incapable of building CLisp and updating SBCL did nothing
and commenting out (qi::save) resultet in strange behaviour I just
used SBCL 1.0.40 which runs fine.

Nik

unread,
Feb 21, 2011, 9:37:29 AM2/21/11
to Qilang
As far as I remember it happens every time after upgrading SBCL.
That is not an issue of Ubuntu or any other Linux distribution.
(I personally use Archlinux.)

=================================================
$ qi
This is SBCL 1.0.45, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
fatal error encountered in SBCL pid 2398(tid 140737353930496):
can't load .core for different runtime, sorry


Welcome to LDB, a low-level debugger for the Lisp runtime environment.
ldb>
=================================================

You should just recompile Qi:

=================================================
$ cd /usr/local/QiII1.07/Lisp # --> that's my installation
directory!
$ sbcl
* (load "install.lsp")
....
; /usr/local/QiII1.07/Lisp/t-star_load20.fasl written
; compilation finished in 0:00:07.838
; compiling file "/usr/local/QiII1.07/Lisp/export_load21.lsp" (written
19 APR 2009 05:18:22 PM):

; /usr/local/QiII1.07/Lisp/export_load21.fasl written
; compilation finished in 0:00:00.041
[undoing binding stack and other enclosing state... done]
[saving current Lisp image into Qi.core:
writing 6352 bytes from the read-only space at 0x20000000
writing 4064 bytes from the static space at 0x20100000
writing 156680192 bytes from the dynamic space at 0x1000000000
done]

#########################################################

$ qi
This is SBCL 1.0.45, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.

Qi II 2008, Copyright (C) 2001-2008 Mark Tarver
www.lambdassociates.org
version 1.07


(0-)
=================================================

Voila!

Regards
Nik

On 20 Feb., 13:56, Thomas Bartscher <thomas.bartsc...@googlemail.com>
wrote:

Thomas Bartscher

unread,
Feb 22, 2011, 9:36:25 AM2/22/11
to Qilang
It doesn't seem to work for 1.0.46
Recompiling leads only to the ldb as before.

Nik

unread,
Feb 24, 2011, 8:49:11 AM2/24/11
to Qilang
I have first upgraded SBCL installation on my Archlinux (64bit):

=======================================================================
$ sudo pacman -Sy sbcl
resolving dependencies...
looking for inter-conflicts...

Targets (1): sbcl-1.0.46-1

Total Download Size: 9.91 MB
Total Installed Size: 75.34 MB

Proceed with installation? [Y/n]
:: Retrieving packages from extra...
sbcl-1.0.46-1-x86_64 9.9M 1806.7K/s 00:00:06
[##################] 100%
checking package integrity...
(1/1) checking for file
conflicts [##################]
100%
(1/1) upgrading
sbcl
[##################] 100%

=======================================================================

Starting qi dropped me into debugger:

=======================================================================

$ qi
This is SBCL 1.0.46, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
fatal error encountered in SBCL pid 9682(tid 140737353930496):
can't load .core for different runtime, sorry


Welcome to LDB, a low-level debugger for the Lisp runtime environment.
ldb>

=======================================================================

Trying to recompile Qi with the new version of SBCL:

$ cd /usr/local/QiII/Lisp
$ sbcl
This is SBCL 1.0.46, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
* (load "install.lsp")

; compiling file "/usr/local/QiII1.07/Lisp/
features_load_1.lsp" (written 06 JUL 2009 09:12:20 PM):
; compiling (IN-PACKAGE :qi)
; compiling (PROCLAIM (QUOTE #))
; compiling (DEFUN waffle-off ...)
...
...
; /usr/local/QiII1.07/Lisp/export_load21.fasl written
; compilation finished in 0:00:00.005
[undoing binding stack and other enclosing state... done]
[saving current Lisp image into Qi.core:
writing 6352 bytes from the read-only space at 0x20000000
writing 4064 bytes from the static space at 0x20100000
writing 152698880 bytes from the dynamic space at 0x1000000000
done]

=======================================================================

$ qi
This is SBCL 1.0.46, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.

Qi II 2008, Copyright (C) 2001-2008 Mark Tarver
www.lambdassociates.org
version 1.07


(0-)

=======================================================================

It worked for me!

Regards
Nik

On 22 Feb., 15:36, Thomas Bartscher <thomas.bartsc...@googlemail.com>
wrote:

Thomas Bartscher

unread,
Feb 28, 2011, 7:14:28 AM2/28/11
to Qilang
Found the mistake:
In "Qi-Linux-SBCL" it says
"sbcl --core Qi.core $* "
This invoked sbcl as installed by Ubuntu (version 1.0.40) whereas I
copied the 1.0.47 executable into the Qi/Lisp folder and used this to
compile Qi. Only had to change the startup-script to say
"./sbcl --core Qi.core $* "
and everything works just fine.

Thanks for your support and patience!

Nik

unread,
Mar 1, 2011, 7:02:11 AM3/1/11
to Qilang
If it's of any interest for you here is my (simple) startup script:

================================
#! /bin/sh

#----------------------------
LISP=/usr/bin/sbcl
QIHOME=/usr/local/QiII
QICORE=${QIHOME}/Lisp/Qi.core
#----------------------------

if [ $# -eq 0 ]; then
exec rlwrap ${LISP} --core ${QICORE}
else
exec ${LISP} --core ${QICORE} "$@"
fi
================================

Regards
Nik

On 28 Feb., 13:14, Thomas Bartscher <thomas.bartsc...@googlemail.com>
wrote:
Reply all
Reply to author
Forward
0 new messages