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

Re: Running PCL with AKCL



Later versions of AKCL have changed the C struct definitions of
closures, so the code in kcl-low.lisp doesn't work.  There's a version
of kcl-low.lisp on rascal.ics.utexas.edu that has the fixes.

Bill Schelter sent mail to the kcl mailing list about how to compile
pcl in AKCL.  I'm including the text of his mail below.

	- Penny

-----------------------------------------------------------------------

>From wfs@rascal.ics.utexas.edu  Tue Dec 19 10:05:17 1989
To: kcl@cli.com
Subject: pcl and akcl
Reply-To: wfs@cs.utexas.edu


There have been various questions about PCL for AKCL.
Changes to compiled functions required a couple of little
changes to kcl-low.lisp.   The kcl-patches file needed to
be ignored.   Here are complete instructions for building
the victoria day version of PCL in AKCL(these are also
at the bottom of kcl-low.lisp on rascal):  

--------------------
Instructions for compilation of pcl in AKCL 

* ftp the new  kcl-low.lisp file from rascal
(128.83.144.1) and put it in your pcl directory.

% cd pcl
% akcl

;; Now to compile pcl evaluate the following forms:

(load "defsys.lisp")
(setq pcl::*pathname-extensions* '("lisp" . "o"))
(setq pcl::*pcl-directory* (truename "./"))
(or (probe-file "kcl-patches.lisp-")  ;replace kcl-patches.lisp by empty file
    (system "mv kcl-patches.lisp kcl-patches.lisp- ; echo > kcl-patches.lisp"))
(pcl::compile-pcl)


;; It should compile without error.  To test:

% cd pcl
% akcl

(load "defsys.lisp")
(setq pcl::*pathname-extensions* '("lisp" . "o"))
(setq pcl::*pcl-directory* (truename "./"))
(pcl::load-pcl)
(load "test.lisp")

;; All tests should run correctly. 

------------------------------------


There is a note in the kcl-low.lisp file about a change for gbc.c in akcl
versions prior to 265.
[The change is to remove  "if (x->cc.cc_data->d.m) break;"
and add turbo-closures to the feature list].

This is an optimization and is not necessary, so you may as well wait
till you get a newer version of akcl, in which case you won't have to
do anything.