Subject: Building 1998-09-09 under FreeBSD

From: Bjorn Remseth <[email-masked]>
Date: Tue, 22 Dec 1998 10:23:52 +0100

I am having some problems building the 1998-09-09 version under FreeBSD.
Under 3.0 current it builds without a single hickup, but on 2.* systems
there are no end of problems (details below). Has anyone tackled this 
one before?

								(Rmz)

--------
For Freebsd  2.2-980616-SNAP  this is what happens:

  if test -d locale; then rm -rf locale; fi
  mkdir locale
  (cd gettext/po && make && make install datadir=../.. localedir='$(datadir)/locale' INSTALL_DATA=ln) || (rm -rf locale ; exit 1)
  installing en.gmo as ../../locale/en/LC_MESSAGES/clisp.mo
  installing de.gmo as ../../locale/de/LC_MESSAGES/clisp.mo
  installing fr.gmo as ../../locale/fr/LC_MESSAGES/clisp.mo
  installing de.gmo as ../../locale/de/LC_MESSAGES/clisp.mo
  ln: ../../locale/de/LC_MESSAGES/clisp.mo: File exists
  *** Error code 1
  
  Stop.
  *** Error code 1

  Stop.
--------

The problem above goes away if I redfine "MAKE = gmake", but then 
the problem below appears:

-------

  gcc -O -W -Wswitch -Wcomment -Wpointer-arith -Wimplicit -Wreturn-type -fomit-frame-pointer -O2 -fexpensive-optimizations -DDYNAMIC_FFI -x none spvw.o  spvwtabf.o  spvwtabs.o  spvwtabo.o  eval.o  control.o  pathname.o  stream.o  socket.o  io.o  array.o  hashtabl.o  list.o  package.o  record.o  sequence.o  charstrg.o  debug.o  error.o  misc.o  time.o  predtype.o  symbol.o  lisparit.o  graph.o  foreign.o  unixaux.o  ari80386.o modules.o libintl.a libreadline.a libavcall.a libcallback.a  -ltermcap -L/usr/X11R6/lib -lX11 -o lisp.run
  sync
  cp -p cfgunix.lsp config.lsp
  ./lisp.run -m 750KW -N locale -x "(load \"init.lsp\") (sys::%saveinitmem) (exit)"
    i i i i i i i       ooooo    o        ooooooo   ooooo   ooooo   
    I I I I I I I      8     8   8           8     8     o  8    8  
    I I I I I I I      8         8           8     8        8    8  
    I I I I I I I      8         8           8      ooooo   8oooo   
     I  \ +' /  I      8         8           8           8  8       
      \  -+-'  /       8     o   8           8     o     8  8       
       -__|__-'         ooooo    8oooooo  ooo8ooo   ooooo   8       
          |                                                         
    ------+------     Copyright (c) Bruno Haible, Michael Stoll 1992, 1993
                      Copyright (c) Bruno Haible, Marcus Daniels 1994-1997
                      Copyright (c) Pierpaolo Bernardi, Sam Steingold 1998
                                                                  
  ;; Loading file defseq.lsp ...
  ;; Loading of file defseq.lsp is finished.
  ;; Loading file backquot.lsp ...
  ;; Loading of file backquot.lsp is finished.
  ;; Loading file defmacro.lsp ...
  ;; Loading of file defmacro.lsp is finished.
  ;; Loading file macros1.lsp ...
  ;; Loading of file macros1.lsp is finished.
  ;; Loading file macros2.lsp ...
  ;; Loading of file macros2.lsp is finished.
  ;; Loading file defs1.lsp ...
  ;; Loading of file defs1.lsp is finished.
  ;; Loading file places.lsp ...
  ;; Loading of file places.lsp is finished.
  ;; Loading file floatpri.lsp ...
  ;; Loading of file floatpri.lsp is finished.
  ;; Loading file type.lsp ...
  ;; Loading of file type.lsp is finished.
  ;; Loading file defstruc.lsp ...
  ;; Loading of file defstruc.lsp is finished.
  ;; Loading file format.lsp ...
  ;; Loading of file format.lsp is finished.
  ;; Loading file /usr/obj/tmp/fnord/clisp-1998-09-09/src/user1.lsp ...
  ;; Loading of file /usr/obj/tmp/fnord/clisp-1998-09-09/src/user1.lsp is finished.
  ;; Loading file /usr/obj/tmp/fnord/clisp-1998-09-09/src/user2.lsp ...
  ;; Loading of file /usr/obj/tmp/fnord/clisp-1998-09-09/src/user2.lsp is finished.
  ;; Loading file /usr/obj/tmp/fnord/clisp-1998-09-09/src/trace.lsp ...
  ;; Loading of file /usr/obj/tmp/fnord/clisp-1998-09-09/src/trace.lsp is finished.
  ;; Loading file /usr/obj/tmp/fnord/clisp-1998-09-09/src/config.lsp ...
  ;; Loading of file /usr/obj/tmp/fnord/clisp-1998-09-09/src/config.lsp is finished.
  ;; Loading file /usr/obj/tmp/fnord/clisp-1998-09-09/src/compiler.lsp ...
  *** - READ from #<STRING-CHAR-FILE-STREAM #P"/usr/obj/tmp/fnord/clisp-1998-09-09/src/compiler.lsp" @3912>: illegal character #\Null
  1155824 ;
  524288
  Bye.
  mv lispimag.mem interpreted.mem
  ./lisp.run -m 1000KW -M interpreted.mem -N locale -q -c compiler.lsp

  *** - EVAL: undefined function COMPILE-FILE
  *** Error code 1

  Stop.
----------

Now, this one is tricky, since I have no idea where even to start looking for 
trouble.  Good ideas, anyone?

								(Rmz)

---

From: Sam Steingold <[email-masked]>
Date: 22 Dec 1998 09:36:42 -0500

>>>> In message <[email-masked]>
>>>> On the subject of "Building 1998-09-09 under FreeBSD"
>>>> Sent on Tue, 22 Dec 1998 01:31:18 -0800 (PST)
>>>> Honorable Bjorn Remseth <[email-masked]> writes:
 >> 
 >> The problem above goes away if I redfine "MAKE = gmake",

always use GNU make. :-)

 >> but then the problem below appears:

 >>   *** - READ from #<STRING-CHAR-FILE-STREAM #P"/usr/obj/tmp/fnord/clisp-1998-09-09/src/compiler.lsp" @3912>: illegal character #\Null

this is the problem.
look at the character 3912 in this file.  what do you see?
try un-tar-ing the file again.

-- 
Sam Steingold (http://www.goems.com/~sds) running RedHat5.2 GNU/Linux
Micros**t is not the answer.  Micros**t is a question, and the answer is Linux,
(http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation.
Those who can't write, write manuals.

---

From: Bruno Haible <[email-masked]>
Date: Tue, 22 Dec 1998 15:46:19 +0100 (MET)

>   ln: ../../locale/de/LC_MESSAGES/clisp.mo: File exists

This was a bug in the FreeBSD /bin/sh, which has been fixed a couple of
months ago.

> trouble.  Good ideas, anyone?

This one looks like an OS bug triggering a problem with clisp's generational
GC. Try to build with "CFLAGS = ... -DNO_GENERATIONAL_GC".

> Under 3.0 current it builds without a single hickup

Congrats to Jordan Hubbard ans his fellows!

Bruno

---

From: Bjorn Remseth <[email-masked]>
Date: Tue, 22 Dec 1998 16:07:04 +0100

> try un-tar-ing the file again.

#+CLISP (import '(sys::function-name-p sys::parse-body sys::add-implicit-block
                  sys::make-load-time-eval
                  sys::closure-name sys::closure-codevec sys::closure-consts
                  sys::fixnump sys::short-float-p sys::single-float-p
                  sys::double-float-p sys::long-float-p
                  sys::search-file sys::date-format sys::line-number
                  sys::%funtabref sys::inlinable sys::constant-inlinable
                  sys::*compiling* sys::*compiling-from-file* sys::*inline-functions*
                  sys::*venv* sys::*fenv* sys::*benv* sys::*genv* sys::*denv*
                  sys::*toplevel-denv*
                  COMPILER::C-PROCLAIM COMPILER::C-PROCLAIM-CONSTANT
                  COMPILER::C-DEFUN COMPILER::C-PROVIDE COMPILER::C-REQUIRE
        )        )
        ^
        !
        This is char 3912.   

It also looks like the .tar file is ok, I ftp-ed it twice, just to make sure,
and "tar" itself also has no complaints, which indicates that the file
indeed contains all its bytes.  Hence the problem probably occurs because
the reader believes it reads a zero when in reality it doesn't. Why it does
I have no idea ;)

								(Rmz)

---

From: Bjorn Remseth <[email-masked]>
Date: Tue, 22 Dec 1998 17:06:11 +0100

> Bjorn Remseth <[email-masked]> writes:

..
> GC. Try to build with "CFLAGS = ... -DNO_GENERATIONAL_GC".

This does indeed remove the problem. Clisp compiles, and my program runs
on all the machines it should run. Thanks a lot guys, and merry Christmas ;))
 
> Congrats to Jordan Hubbard ans his fellows!

Absolutely :)
								(Rmz)

---

From: Dobes Vandermeer <[email-masked]>
Date: Tue, 22 Dec 1998 14:30:00 -0800

Hey, I'm new to this list..

I want to use CLISP in my own application (possilby commercially).  From
what I understand of the GPL, this is fine, as long as I am willing to
provide sources for CLISP, and any derivaive work (that is also a LISP
interpreter).

There are some things I am not clear on about CLISP... especially, I
cannot tell if it incrementally compiles or not?  In the docs, it talks
abut compiling to bytecode a lot, and also compiling, and I am not sure
if they are seperate...

Finally, I cannot get CLISP to compil under Windows NT, i386, using
either MSVC++ 5 or Cygwin32's UNIX environment.  MSVC crashes with a
"syntax error before "!"", and Cygwin32 reaches some tests in ./confugre
and exits, so when I try and build the sources, it complains that it
cannot determien whether the stack grows up or down, whether my system
is big or little endian, etc..

Any help appreciated!

CU
Dobes