[Larceny-users] Larceny 0.961 build annoyances

Felix Klock felixluser at pnkfx.org
Mon Jun 23 18:33:41 EDT 2008


David (cc'ing larceny-users)-

On Jun 22, 2008, at 2:56 AM, David Rush wrote:

> On Sun, Jun 22, 2008 at 1:33 AM, Jed Davis <jdev at panix.com> wrote:
>> On Sat, Jun 21, 2008 at 07:47:31PM +0100, David Rush wrote:
>>> I don't know what it is with my Debian systems, but I seem to have
>>> endless problems building Larceny on them. My latest round has
>>> occurred with the 0.961 source code tarball. I can't use the binary
>>> release because of libc incompatibility with my Debian Etch release,
>>
>> Let's see... Etch seems to have glibc 2.3.6, according to
>> packages.debian.org, and:
>> ...
>> whether that's the only issue preventing use on older systems.
>
> Not to whine or anything, but Etch was only promoted to Debian stable
> on 17 Feb 2008. I do realize that Debian doesn't have the world's
> fastest release cycle, but four months seems pretty recent. But
> rebuilding the runtime to work on the current stable Debian wasn't a
> problem. The part I really don't understand is why everything except
> heap-building seems to work correctly in the build process.

I was not aware of the dependency on glibc 2.4 that the newer gcc  
seems to be introducing.  I will investigate Jed's suggestion of using  
-fno-stack-protector to try to remove that dependency on glibc 2.4  
(Ticket #546).

I tried to replicate your problem building the heap, but that step of  
the build process worked on the copy of Debian Etch that I tried it  
out on.  I have included a transcript of the build in this email, to  
make it obvious which versions of the Larceny source, Mzscheme  
runtime, and the setup flags I used in the build, and also to make it  
clear which files are being generated by the build.  (The kind of  
symptoms that you described in his email can be caused by build  
artifacts from one Scheme system corrupting a build attempt under a  
different scheme system.)

If you continue to have issues with your build when following the  
steps transcribed below, I can post my VMware image for this Etch- 
based build online, so that you could compare its configuration with  
your own machine's configuration and figure out which is the  
significant difference here.

-Felix



% ls -F
Desktop/  larceny-0.961-src.tar.gz  plt/
% tar xzf larceny-0.961-src.tar.gz
% cd larceny-0.961-src
% ../plt/bin/mzscheme
Welcome to MzScheme v372 [3m], Copyright (c) 2004-2007 PLT Scheme Inc.
 > (load "setup.sch")
 > (setup 'scheme: 'mzscheme 'host: 'linux86 'sassy)
Loading MzScheme compatibility package.
src/Build/expander.sch
src/Build/config.sch
#t
 > (build-config-files)
src/Rts/features.sch
Redefined feature set!
 > (load-compiler)
src/Build/nbuild.sch
src/Build/nbuild-files.sch
src/Build/nbuild-defns.sch
Loading Twobit.
src/Compiler/hash.sch
src/Compiler/hashtable.sch
src/Compiler/hashtree.sch
src/Compiler/sets.sch
src/Compiler/switches.sch
src/Compiler/pass1.aux.sch
src/Compiler/pass2.aux.sch
src/Compiler/prefs.sch
src/Compiler/pass0.sch
src/Compiler/syntaxenv.sch
src/Compiler/syntaxrules2.sch
src/Compiler/syntaxrules.sch
src/Compiler/lowlevel.sch
src/Compiler/expand.sch
src/Compiler/usual.sch
WARNING from macro expander:
Redefining
let
src/Compiler/pass1.sch
src/Compiler/copy.sch
src/Compiler/pass3commoning.aux.sch
src/Compiler/pass3rep.aux.sch
src/Lib/Common/globals.sch
src/Lib/Common/ecodes.sch
src/Lib/Common/layouts.sch
src/Lib/Common/regs.sch
src/Compiler/common.imp.sch
WARNING from macro expander:
Redefining
.call
src/Compiler/iasn.imp.sch
src/Compiler/iasn.imp2.sch
src/Compiler/pass2p1.sch
src/Compiler/pass2p2.sch
src/Compiler/pass2if.sch
src/Compiler/pass3callgraph.sch
src/Compiler/pass3inlining.sch
src/Compiler/pass3folding.sch
src/Compiler/pass3anormal.sch
src/Compiler/pass3anormal2.sch
src/Compiler/pass3commoning.sch
src/Compiler/pass3rep.sch
src/Compiler/pass3.sch
src/Compiler/pass4.aux.sch
src/Compiler/pass4p1.sch
src/Compiler/pass4p2.sch
src/Compiler/pass4let.sch
src/Compiler/pass4special.sch
src/Compiler/pass4p3.sch
src/Compiler/driver-common.sch
src/Compiler/driver-twobit.sch
src/Compiler/printlap.sch
Loading the common assembler.
src/Asm/Shared/pass5p1.sch
src/Asm/Shared/asmutil.sch
src/Asm/Shared/asmutil32el.sch
src/Asm/Shared/asmutil32.sch
src/Asm/Shared/makefasl.sch
src/Asm/Shared/dumpheap.sch
Loading x86-sass machine assembler.
src/Asm/Shared/external-assembler.sch
Selecting compiler: No compiler at all
src/Asm/IAssassin/sassy-machine.sch
src/Asm/IAssassin/sassy-instr.sch
src/Asm/IAssassin/sassy-invoke.sch
src/Asm/IAssassin/pass5p2-sassy.sch
src/Asm/IAssassin/peepopt.sch
src/Asm/IAssassin/asm-switches.sch
Loading bootstrap heap dumper.
Loading make utility, makefile, and help.
src/Build/make.sch
src/Build/compile-tools.sch
src/Lib/makefile.sch
src/Compiler/help.sch
Loading utility functions.
src/Rts/make-templates.sch
src/Build/cleanup.sch

Welcome. Type (help) for help.
 > (build-heap)
Assembling src/Lib/Common/malcode.lop
Compiling src/Lib/Common/typetags.lap
Assembling src/Lib/Common/typetags.lop
Compiling src/Lib/Common/syscall-id.lap
Assembling src/Lib/Common/syscall-id.lop
Compiling src/Lib/Common/sys-unix.lap
Assembling src/Lib/Common/sys-unix.lop
Compiling src/Lib/Common/system-interface.lap
Assembling src/Lib/Common/system-interface.lop
Compiling src/Lib/Common/error0.lap
Assembling src/Lib/Common/error0.lop
Compiling src/Lib/Arch/IAssassin/primops.lap
Assembling src/Lib/Arch/IAssassin/primops.lop
Compiling src/Lib/Common/sysparam.lap
Assembling src/Lib/Common/sysparam.lop
Compiling src/Lib/Common/struct.lap
Assembling src/Lib/Common/struct.lop
Compiling src/Lib/Common/command-line.lap
Assembling src/Lib/Common/command-line.lop
Compiling src/Lib/Common/list.lap
Assembling src/Lib/Common/list.lop
Compiling src/Lib/Common/vector.lap
Assembling src/Lib/Common/vector.lop
Compiling src/Lib/Common/bytevector.lap
Assembling src/Lib/Common/bytevector.lop
Compiling src/Lib/Common/string.lap
Assembling src/Lib/Common/string.lop
Compiling src/Lib/Common/control.lap
Assembling src/Lib/Common/control.lop
Compiling src/Lib/Common/hash.lap
Assembling src/Lib/Common/hash.lop
Compiling src/Lib/Common/preds.lap
Assembling src/Lib/Common/preds.lop
Compiling src/Lib/Common/oblist.lap
Assembling src/Lib/Common/oblist.lop
Compiling src/Lib/Common/mcode.lap
Assembling src/Lib/Common/mcode.lop
Compiling src/Lib/Common/memstats.lap
Assembling src/Lib/Common/memstats.lop
Compiling src/Lib/Common/record.lap
Assembling src/Lib/Common/record.lop
Compiling src/Lib/Common/condition.lap
Assembling src/Lib/Common/condition.lop
Compiling src/Lib/Common/ecodes.lap
Assembling src/Lib/Common/ecodes.lop
Compiling src/Lib/Common/ehandler.lap
Assembling src/Lib/Common/ehandler.lop
Compiling src/Lib/Common/error.lap
Assembling src/Lib/Common/error.lop
Compiling src/Lib/Common/raise.lap
Assembling src/Lib/Common/raise.lop
Compiling src/Lib/Common/timer.lap
Assembling src/Lib/Common/timer.lop
Compiling src/Lib/Common/exit.lap
Assembling src/Lib/Common/exit.lop
Compiling src/Lib/Common/dump.lap
Assembling src/Lib/Common/dump.lop
Compiling src/Lib/Common/secret.lap
Assembling src/Lib/Common/secret.lop
Compiling src/Lib/Common/hashtable.lap
Assembling src/Lib/Common/hashtable.lop
Compiling src/Lib/Common/enum.lap
Assembling src/Lib/Common/enum.lop
Compiling src/Lib/Common/unicode0.lap
Assembling src/Lib/Common/unicode0.lop
Compiling src/Lib/Common/unicode1.lap
Assembling src/Lib/Common/unicode1.lop
Compiling src/Lib/Common/unicode2.lap
Assembling src/Lib/Common/unicode2.lop
Compiling src/Lib/Common/unicode3.lap
Assembling src/Lib/Common/unicode3.lop
Compiling src/Lib/Common/unicode4.lap
Assembling src/Lib/Common/unicode4.lop
Compiling src/Lib/Common/require.lap
Assembling src/Lib/Common/require.lop
Compiling src/Lib/Common/iosys.lap
Assembling src/Lib/Common/iosys.lop
Compiling src/Lib/Common/fileio.lap
Assembling src/Lib/Common/fileio.lop
Compiling src/Lib/Common/conio.lap
Assembling src/Lib/Common/conio.lop
Compiling src/Lib/Common/bytevectorio.lap
Assembling src/Lib/Common/bytevectorio.lop
Compiling src/Lib/Common/stringio.lap
Assembling src/Lib/Common/stringio.lop
Compiling src/Lib/Common/customio.lap
Assembling src/Lib/Common/customio.lop
Compiling src/Lib/Common/utf16.lap
Assembling src/Lib/Common/utf16.lop
Compiling src/Lib/Common/portio.lap
Assembling src/Lib/Common/portio.lop
Compiling src/Lib/Common/stdio.lap
Assembling src/Lib/Common/stdio.lop
Compiling src/Lib/Common/print.lap
Assembling src/Lib/Common/print.lop
Compiling src/Lib/Common/ioboot.lap
Assembling src/Lib/Common/ioboot.lop
Compiling src/Lib/Common/format.lap
Assembling src/Lib/Common/format.lop
Compiling src/Lib/Common/sort.lap
Assembling src/Lib/Common/sort.lop
Compiling src/Lib/Common/number.lap
Assembling src/Lib/Common/number.lop
Compiling src/Lib/Common/fx.lap
Assembling src/Lib/Common/fx.lop
Compiling src/Lib/Common/fl.lap
Assembling src/Lib/Common/fl.lop
Compiling src/Lib/Common/bitwise.lap
Assembling src/Lib/Common/bitwise.lop
Compiling src/Lib/Common/globals.lap
Assembling src/Lib/Common/globals.lop
Compiling src/Lib/Common/profile.lap
Assembling src/Lib/Common/profile.lop
Compiling src/Lib/Common/bignums-el.lap
Assembling src/Lib/Common/bignums-el.lop
Compiling src/Lib/Common/bignums.lap
Assembling src/Lib/Common/bignums.lop
Compiling src/Lib/Common/ratnums.lap
Assembling src/Lib/Common/ratnums.lop
Compiling src/Lib/Common/rectnums.lap
Assembling src/Lib/Common/rectnums.lop
Compiling src/Lib/Common/flonums-el.lap
Assembling src/Lib/Common/flonums-el.lop
Compiling src/Lib/Common/flonums.lap
Assembling src/Lib/Common/flonums.lop
Compiling src/Lib/Common/contag.lap
Assembling src/Lib/Common/contag.lop
Compiling src/Lib/Common/num2str.lap
Assembling src/Lib/Common/num2str.lop
Compiling src/Lib/Common/belle.lap
Assembling src/Lib/Common/belle.lop
Compiling src/Lib/Common/str2num.lap
Assembling src/Lib/Common/str2num.lop
Compiling src/Lib/Common/javadot-symbol.lap
Assembling src/Lib/Common/javadot-symbol.lop
Compiling src/Lib/Common/javadot-syntax.lap
Assembling src/Lib/Common/javadot-syntax.lop
Compiling src/Lib/Common/reader.lap
ANF size: 32727
Assembling src/Lib/Common/reader.lop
Compiling src/Lib/Common/env.lap
Assembling src/Lib/Common/env.lop
Compiling src/Lib/Common/procinfo.lap
Assembling src/Lib/Common/procinfo.lop
Compiling src/Lib/Common/load.lap
Assembling src/Lib/Common/load.lop
Compiling src/Lib/Common/eval.lap
Assembling src/Lib/Common/eval.lop
Compiling src/Lib/Common/syshooks.lap
Assembling src/Lib/Common/syshooks.lop
Compiling src/Lib/Common/gcctl.lap
Assembling src/Lib/Common/gcctl.lop
Compiling src/Lib/Common/toplevel.lap
Assembling src/Lib/Common/toplevel.lop
Compiling src/Lib/Arch/IAssassin/toplevel-target.lap
Assembling src/Lib/Arch/IAssassin/toplevel-target.lop
Compiling src/Lib/Arch/IAssassin/loadable.lap
Assembling src/Lib/Arch/IAssassin/loadable.lop
Compiling src/Lib/Common/go.lap
Assembling src/Lib/Common/go.lop
Compiling src/Lib/Repl/main.lap
Assembling src/Lib/Repl/main.lop
Compiling src/Lib/Repl/reploop.lap
Assembling src/Lib/Repl/reploop.lop
Compiling src/Lib/Interpreter/interp.lap
Assembling src/Lib/Interpreter/interp.lop
Compiling src/Lib/Interpreter/interp-prim.lap
Assembling src/Lib/Interpreter/interp-prim.lop
Compiling src/Lib/Interpreter/switches.lap
Assembling src/Lib/Interpreter/switches.lop
Compiling src/Compiler/pass0.lap
Assembling src/Compiler/pass0.lop
Compiling src/Compiler/pass1.lap
Assembling src/Compiler/pass1.lop
Compiling src/Compiler/pass1.aux.lap
Assembling src/Compiler/pass1.aux.lop
Compiling src/Compiler/pass2.aux.lap
Assembling src/Compiler/pass2.aux.lop
Compiling src/Compiler/prefs.lap
Assembling src/Compiler/prefs.lop
Compiling src/Compiler/syntaxenv.lap
Assembling src/Compiler/syntaxenv.lop
Compiling src/Compiler/syntaxrules2.lap
Assembling src/Compiler/syntaxrules2.lop
Compiling src/Compiler/syntaxrules.lap
Assembling src/Compiler/syntaxrules.lop
Compiling src/Compiler/lowlevel.lap
Assembling src/Compiler/lowlevel.lop
Compiling src/Compiler/expand.lap
Assembling src/Compiler/expand.lop
Compiling src/Compiler/usual.lap
Assembling src/Compiler/usual.lop
Compiling src/Lib/Interpreter/macro-expand.lap
Assembling src/Lib/Interpreter/macro-expand.lop
Dumping sasstrap.heap
Loading src/Lib/Common/malcode.lop
Loading src/Lib/Common/typetags.lop
Loading src/Lib/Common/syscall-id.lop
Loading src/Lib/Common/sys-unix.lop
Loading src/Lib/Common/system-interface.lop
Loading src/Lib/Common/error0.lop
Loading src/Lib/Arch/IAssassin/primops.lop
Loading src/Lib/Common/sysparam.lop
Loading src/Lib/Common/struct.lop
Loading src/Lib/Common/command-line.lop
Loading src/Lib/Common/list.lop
Loading src/Lib/Common/vector.lop
Loading src/Lib/Common/bytevector.lop
Loading src/Lib/Common/string.lop
Loading src/Lib/Common/control.lop
Loading src/Lib/Common/hash.lop
Loading src/Lib/Common/preds.lop
Loading src/Lib/Common/oblist.lop
Loading src/Lib/Common/mcode.lop
Loading src/Lib/Common/memstats.lop
Loading src/Lib/Common/record.lop
Loading src/Lib/Common/condition.lop
Loading src/Lib/Common/ecodes.lop
Loading src/Lib/Common/ehandler.lop
Loading src/Lib/Common/error.lop
Loading src/Lib/Common/raise.lop
Loading src/Lib/Common/timer.lop
Loading src/Lib/Common/exit.lop
Loading src/Lib/Common/dump.lop
Loading src/Lib/Common/secret.lop
Loading src/Lib/Common/hashtable.lop
Loading src/Lib/Common/enum.lop
Loading src/Lib/Common/unicode0.lop
Loading src/Lib/Common/unicode1.lop
Loading src/Lib/Common/unicode2.lop
Loading src/Lib/Common/unicode3.lop
Loading src/Lib/Common/unicode4.lop
Loading src/Lib/Common/require.lop
Loading src/Lib/Common/iosys.lop
Loading src/Lib/Common/fileio.lop
Loading src/Lib/Common/conio.lop
Loading src/Lib/Common/bytevectorio.lop
Loading src/Lib/Common/stringio.lop
Loading src/Lib/Common/customio.lop
Loading src/Lib/Common/utf16.lop
Loading src/Lib/Common/portio.lop
Loading src/Lib/Common/stdio.lop
Loading src/Lib/Common/print.lop
Loading src/Lib/Common/ioboot.lop
Loading src/Lib/Common/format.lop
Loading src/Lib/Common/sort.lop
Loading src/Lib/Common/number.lop
Loading src/Lib/Common/fx.lop
Loading src/Lib/Common/fl.lop
Loading src/Lib/Common/bitwise.lop
Loading src/Lib/Common/globals.lop
Loading src/Lib/Common/profile.lop
Loading src/Lib/Common/bignums-el.lop
Loading src/Lib/Common/bignums.lop
Loading src/Lib/Common/ratnums.lop
Loading src/Lib/Common/rectnums.lop
Loading src/Lib/Common/flonums-el.lop
Loading src/Lib/Common/flonums.lop
Loading src/Lib/Common/contag.lop
Loading src/Lib/Common/num2str.lop
Loading src/Lib/Common/belle.lop
Loading src/Lib/Common/str2num.lop
Loading src/Lib/Common/javadot-symbol.lop
Loading src/Lib/Common/javadot-syntax.lop
Loading src/Lib/Common/reader.lop
Loading src/Lib/Common/env.lop
Loading src/Lib/Common/procinfo.lop
Loading src/Lib/Common/load.lop
Loading src/Lib/Common/eval.lop
Loading src/Lib/Common/syshooks.lop
Loading src/Lib/Common/gcctl.lop
Loading src/Lib/Common/toplevel.lop
Loading src/Lib/Arch/IAssassin/toplevel-target.lop
Loading src/Lib/Arch/IAssassin/loadable.lop
Loading src/Lib/Common/go.lop
Loading src/Lib/Repl/main.lop
Loading src/Lib/Repl/reploop.lop
Loading src/Lib/Interpreter/interp.lop
Loading src/Lib/Interpreter/interp-prim.lop
Loading src/Lib/Interpreter/switches.lop
Loading src/Compiler/pass0.lop
Loading src/Compiler/pass1.lop
Loading src/Compiler/pass1.aux.lop
Loading src/Compiler/pass2.aux.lop
Loading src/Compiler/prefs.lop
Loading src/Compiler/syntaxenv.lop
Loading src/Compiler/syntaxrules2.lop
Loading src/Compiler/syntaxrules.lop
Loading src/Compiler/lowlevel.lop
Loading src/Compiler/expand.lop
Loading src/Compiler/usual.lop
Loading src/Lib/Interpreter/macro-expand.lop
Assembling final procedure
Creating final image in "sasstrap.heap"...
 >




More information about the Larceny-users mailing list