chicken-janitors
[Top][All Lists]
Advanced

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

Re: [Chicken-janitors] #1433: Static egg linkling seems to be broken


From: Chicken Trac
Subject: Re: [Chicken-janitors] #1433: Static egg linkling seems to be broken
Date: Thu, 28 Dec 2017 07:51:41 -0000

#1433: Static egg linkling seems to be broken
---------------------------------------+-----------------
            Reporter:  felix           |      Owner:
                Type:  defect          |     Status:  new
            Priority:  critical        |  Milestone:  5.0
           Component:  core libraries  |    Version:  5.0
          Resolution:                  |   Keywords:
Estimated difficulty:  medium          |
---------------------------------------+-----------------

Comment (by sjamaan):

 Replying to [comment:6 felix]:
 > Replying to [comment:5 sjamaan]:
 > > I built a clean version of CHICKEN 5 with and without the patches, and
 didn't get the error.  Maybe you were using a stale copy of srfi-1?
 > >
 > > If you're using the "local" repository you will need to uninstall and
 git clean -df before retrying, I think.
 >
 > Did you purge the egg install cache? And can you give me the complete
 genealogy of the csc you are finally using? (including intermediate steps
 of producing (boot-)chickens)

 From the top (on a clean Linux system without CHICKEN 5):

 First install pre4:

 {{{
 $ rm -rf ~/.chicken-install.cache
 $ wget https://code.call-cc.org/dev-
 snapshots/2017/12/14/chicken-5.0.0pre4.tar.gz
 $ tar xzf chicken-5.0.0pre4.tar.gz
 $ cd chicken-5.0.0pre4
 $ make PLATFORM=linux PREFIX=/home/peter/chickens/5.0.0pre4 install
 }}}

 Next, apply patches and build a boot-chicken, then use that to build the
 actual CHICKEN:

 {{{
 $ cd ../chicken-core
 $ git clean -df
 $ git am < ~/0001-Remove-obsolete-deprecated-stuff.patch
 $ git am < ~/0002-Drop-weird-macro-workarounds-in-favour-of-
 chicken.in.patch
 $ git am < ~/0003-Include-definitions-of-default-modules-into-
 modules..patch
 $ make PLATFORM=linux CHICKEN=/home/peter/chickens/5.0.0pre4/bin/chicken
 boot-chicken
 $ make PLATFORM=linux CHICKEN=./chicken-boot
 PREFIX=/home/peter/chickens/chicken-5 install
 }}}

 Now, run the test program:

 {{{
 $ cd /tmp
 $ ~/chickens/chicken-5/bin/chicken-install srfi-1
 $ echo '(import srfi-1)' > test.scm
 $ ~/chickens/chicken-5/bin/csc  -static test.scm -kv -debug 2
 }}}

 Let's check it's statically linked (no libchicken in there):

 {{{
 $ ldd test
         linux-vdso.so.1 (0x00007fffa6ff1000)
         libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f9507f4a000)
         libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2
 (0x00007f9507d46000)
         libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f95079a7000)
         /lib64/ld-linux-x86-64.so.2 (0x00007f9508686000)
 }}}

 OK, great. Now let's run it:

 {{{
 $ ./test -:rd
 [debug] application startup...
 [debug] heap resized to 1048576 bytes
 [debug] stack bottom is 0x7ffdf3e09100.
 [debug] entering toplevel...
 [debug] entering library...
 [debug] entering build-version...
 [debug] entering eval...
 [debug] entering chicken-syntax...
 [debug] entering expand...
 [debug] entering internal...
 [debug] entering modules...
 [debug] entering srfi-1...
 scheme#eval
 scheme#eval
 chicken.base#implicit-exit-handler
 [debug] forcing finalizers...
 [debug] application terminated normally
 }}}

 This gave me no errors.

--
Ticket URL: <https://bugs.call-cc.org/ticket/1433#comment:7>
CHICKEN Scheme <https://www.call-cc.org/>
CHICKEN Scheme is a compiler for the Scheme programming language.

reply via email to

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