Discussion:
[Larceny-users] Bootstrapping...
David Rush
2009-04-21 08:55:45 UTC
Permalink
Hi y'all -

What was once merely an annoying invocation has grown to become a
difficult-to-perform ritual. I am of course referring the the
bootstrapping of Larceny in the cases where there is any kind of a
library mismatch from the supported distributions. Specifically, not
only is Larceny difficult to bootstrap (yes, the directions are clear
and explicit, but it is rather more complex than a "configure;
make"), but PLT has it's own long chain of dependencies as well.
Effectively I am now unable to move my installation (on a fresh
install of Debian Etch for x86-32) forward because, for some reason,
PLT's install is crapping out and saying that cpp "fails sanity
check".

Whatever. PLT's build problems are not Larceny's - but they are
indirectly since Larceny needs a host Scheme to bootstrap. What are
the chances of getting another easy-to-bootstrap (e.g. Gambit or
Chicken) Scheme added to the bootstrap list?

Given that I use Larceny on unfunded secret weapons project of mine,
this is a big problem.

david
--
GPG Public key at http://cyber-rush.org/drr/gpg-public-key.txt
Marco Maggi
2009-04-21 10:12:35 UTC
Permalink
I am of course referring the bootstrapping of
Larceny in the cases where there is any kind
of a library mismatch from the supported
distributions.
I am not sure to understand correctly... You
used to rely on a PLT installation to build
Larceny from its sources, and now this is a
problem because PLT itself does not build
correctly?

So something is preventing you from trying
to boot Larceny using a Larceny binary
distribution? If this is the case, maybe the
problem to solve is why Larceny-binary does
not run on your system?

I can successfully build Larceny on the
latest Slackware on my x86 netbook using the
prebuilt distribution from:

http://www.ccs.neu.edu/home/will/Larceny/download.html

can you? If not why?

HTH
--
Marco Maggi
David Rush
2009-04-21 10:30:00 UTC
Permalink
Post by Marco Maggi
I am of course referring the bootstrapping of
Larceny in the cases where there is any kind
of a library mismatch from the supported
distributions.
So something is preventing you from trying
to boot Larceny using a Larceny binary
distribution?
Yes. Debian Etch apparently does not have GLIBC 2.4

***@debbie:~/dist/larceny-0.97b1-bin-native-ia32-linux86$ ./larceny
/home/drr/dist/larceny-0.97b1-bin-native-ia32-linux86/larceny.bin:
/lib/tls/i686/cmov/libc.so.6: version `GLIBC_2.4' not found (required
by /home/drr/dist/larceny-0.97b1-bin-native-ia32-linux86/larceny.bin)

In other business, it appears that there is partial support for
building from a Gambit-C bootstrap in the source tree. I am
frobnicating that code right now

david rush
--
GPG Public key at http://cyber-rush.org/drr/gpg-public-key.txt
Felix Klock
2009-04-21 11:06:59 UTC
Permalink
David (cc'ing larceny-users)-
Post by David Rush
Yes. Debian Etch apparently does not have GLIBC 2.4
/lib/tls/i686/cmov/libc.so.6: version `GLIBC_2.4' not found (required
by /home/drr/dist/larceny-0.97b1-bin-native-ia32-linux86/larceny.bin)
Yes, you mentioned this quite a while ago; it was filed as Ticket
#546, but I do not recall looking into it beyond duplicating the
problem myself.

I really should see if adding -fno-stack-protector to our runtime
build infrastructure removes this problem...

-Felix
David Rush
2009-04-21 10:30:53 UTC
Permalink
Worthy of notice on the liist, hence forwarded. Thank you Lynn

---------- Forwarded message ----------
From: Lynn Winebarger <***@gmail.com>
Date: 2009/4/21
Subject: Re: [Larceny-users] Bootstrapping...
To: David Rush <***@gmail.com>


Hi David,

FWIW, PLT has an undocumented dislike of gcc 4+.  Larceny does as
well.  I had to make gcc and g++ refer to version 3.4 on cygwin to get
it to compile.

Lynn
Post by David Rush
Hi y'all -
What was once merely an annoying invocation has grown to become a
difficult-to-perform ritual. I am of course referring the the
bootstrapping of Larceny in the cases where there is any kind of a
library mismatch from the supported distributions. Specifically, not
only is Larceny difficult to bootstrap (yes, the directions are clear
and explicit, but it is rather more complex than a  "configure;
make"), but PLT has it's own long chain of dependencies as well.
Effectively I am now unable to move my installation (on a fresh
install of Debian Etch for x86-32) forward because, for some reason,
PLT's install is crapping out and saying that cpp "fails sanity
check".
Whatever. PLT's build problems are not Larceny's - but they are
indirectly since Larceny needs a host Scheme to bootstrap. What are
the chances of getting another easy-to-bootstrap (e.g. Gambit or
Chicken) Scheme added to the bootstrap list?
Given that I use Larceny on unfunded secret weapons project of mine,
this is a big problem.
david
--
GPG Public key at http://cyber-rush.org/drr/gpg-public-key.txt
_______________________________________________
Larceny-users mailing list
https://lists.ccs.neu.edu/bin/listinfo/larceny-users
--
GPG Public key at http://cyber-rush.org/drr/gpg-public-key.txt
Felix Klock
2009-04-21 11:15:49 UTC
Permalink
David (cc'ing larceny-users)-
Post by David Rush
---------- Forwarded message ----------
...
FWIW, PLT has an undocumented dislike of gcc 4+. Larceny does as
well. I had to make gcc and g++ refer to version 3.4 on cygwin to get
it to compile.
Problems with GCC 4 were noted at least at one point in the past...

https://trac.ccs.neu.edu/trac/larceny/changeset/2467

However, as noted there, the dislike of GCC 4 was due to poor memory
performance on the C code generated by Petit Larceny (especially that
for the reader, if my memory serves).

It sounds like the problems with gcc 4+ that you two are alluding to
are of a different flavor?

-Felix
Lynn Winebarger
2009-04-21 11:41:57 UTC
Permalink
Post by Felix Klock
Post by David Rush
---------- Forwarded message ----------
...
FWIW, PLT has an undocumented dislike of gcc 4+.  Larceny does as
well.  I had to make gcc and g++ refer to version 3.4 on cygwin to get
it to compile.
Problems with GCC 4 were noted at least at one point in the past...
  https://trac.ccs.neu.edu/trac/larceny/changeset/2467
I think that's what I was referencing. I just remember something
about "gcc 4+ doesn't like the generated code". So I probably
overstated the case. PLT really doesn't work with 4+ so it was moot
for me at that point.

However, when I say "undocumented" I mean that it's not in the "how to
build" document, not that it isn't the developer's database of issues.

Lynn
Felix Klock
2009-04-21 11:55:51 UTC
Permalink
Lynn (cc'ing larceny-users)-
Post by Lynn Winebarger
I think that's what I was referencing. I just remember something
about "gcc 4+ doesn't like the generated code". So I probably
overstated the case. PLT really doesn't work with 4+ so it was moot
for me at that point.
Ah, okay.
Post by Lynn Winebarger
However, when I say "undocumented" I mean that it's not in the "how to
build" document, not that it isn't the developer's database of issues.
The memory issues building Petit Larceny seem to have been fixed in
the gcc code base, so copying the note that we had in HOWTO-MACOSX
would be documenting a fixed bug in gcc.

I am not aware of any current problems building Larceny atop gcc 4+.
(At least, I no longer need to gcc_select version 3 to build Petit
Larceny on the powerpc mac auto builds...)

Therefore I do not think such a note belongs in the current "how to
build" document for Larceny.

Of course, if I am wrong and someone has encountered problems with gcc
4+, please let us know!

Thanks for the feedback,
-Felix
Lynn Winebarger
2009-04-24 11:30:24 UTC
Permalink
The memory issues building Petit Larceny seem to have been fixed in the gcc
code base, so copying the note that we had in HOWTO-MACOSX would be
documenting a fixed bug in gcc.
I am not aware of any current problems building Larceny atop gcc 4+.  (At
least, I no longer need to gcc_select version 3 to build Petit Larceny on
the powerpc mac auto builds...)
Therefore I do not think such a note belongs in the current "how to build"
document for Larceny.
Actually, I owe the larceny developers an apology, this note (about
gcc 3.3 being known to work, 4.0 having possible problems) actually is
in the larceny "README-FIRST" document.
It's probably actually the reason I started wondering if that was the
problem with PLT as well.

Thanks for the great work,
Lynn

William D Clinger
2009-04-23 02:18:16 UTC
Permalink
Post by David Rush
Whatever. PLT's build problems are not Larceny's - but they are
indirectly since Larceny needs a host Scheme to bootstrap. What are
the chances of getting another easy-to-bootstrap (e.g. Gambit or
Chicken) Scheme added to the bootstrap list?
Pretty good in the medium and long term, but I don't know
when.

At this time, PLT v37x is the only supported alternative
to Larceny itself for building Larceny. We do not support
PLT v4 for that purpose; indeed, PLT v4 introduced so
many compatibility problems that I doubt whether we will
ever use PLT v4 to build Larceny. That means we need to
look for an alternative.

Gambit-C is a likely choice. The new release of Chicken
sounds as though it may be more R5RS-conforming, which
might make it a contender. We'll be looking at those
and several others, but will probably support only one.

Will
Loading...