scm-discuss
[Top][All Lists]
Advanced

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

Re: [Scm-discuss] building scm


From: Philipp Klaus Krause
Subject: Re: [Scm-discuss] building scm
Date: Sun, 17 Oct 2010 23:18:23 +0200
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.12) Gecko/20100917 Icedove/3.0.8

Am 17.10.2010 18:31, schrieb Aubrey Jaffer:
> After running `make scmlit', I ran your command on a clean version of
> slib-3b3.zip and scm-5e7.zip on gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3 on
> x86_64.  There were 24 warnings and no errors.  The warnings on my
> system are harmless, mostly about discarding `const' from strings and
> integer size conversions.
> 
> But you didn't send the warnings you received.  If you are worried
> about a particular warning, please reply with the text of the actual
> message.

I was worried about "warning: cast to pointer from integer of different
size", since they look like scm might try to store pointers in ints.

> 
>  | When I invoke the second one ("gcc -rdynamic -o scm continue.o scm.o
>  | scmmain.o findexec.o script.o time.o repl.o scl.o eval.o sys.o subr.o
>  | debug.o unif.o rope.o -lm -lc") I get an error:
>  | scm.o: In function `scm_init_extensions':
>  | scm.c:(.text+0x35): undefined reference to `init_edline'
> 
> Your command works fine on my system.

I started from a clean unzipped scm agian, doing the make scmlit
followed by the commands and they worked. I think I had tried to use
"make all" in my previous failed attempt, maybe that created the
offending line in scmflags.h. It seems building scm is a lot more
complicated than builing the average software package. I should have
read the documentation on building scm before. Sorry for the noise.

> 
> A call to init_edline() would be put into "scmflags.h" by building
> with `-F edit-line'.  "scmflags.h" is built by echo statements in the
> script created by the build script.  You didn't say how you created
> your "scmflags.h".
> 
>  | Previously I looked at the scm in Debian (5e5) and tried
>  | hobbit. The code hobbit creates looks horrible and broken.
> 
> Did it fail to compile or link?

Yes. For starters it uses K&R style functions instead of ANSI/ISO. AFAIK
K&R style functions not been valid C for over 20 years. It creates
identifier names that contain characters not required to be valid in C
identifiers, such as 'รค' (and I do not know of any C compiler allowing
these in identifiers).

> Hobbit code is for compilers, not
> humans.

Well, hobbit output seems quite readable, at least when compared to most
other Scheme->"C" compilers.

Philipp



reply via email to

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