unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
From: Michael Titke <michael.tiedtke@o2online.de>
To: guile-user@gnu.org
Subject: Re: Guile 1.8 / Viper System Interface
Date: Sun, 28 Jun 2015 22:18:35 +0200	[thread overview]
Message-ID: <5590569B.6020309@o2online.de> (raw)
In-Reply-To: <558CE503.5020807@o2online.de>

Today the first successful clean room build of Viper's System Interface 
(still heavily recognizable as Guile 1.8) compiled successfully and ran 
for the first time.

Right now it's source tree of C files is about 4,5 MB on the file system 
with the generated 1.1 MB linux-x86_64 binary included. As a clean room 
branch of GNU Guile 1.8 it does away with the auto tools / libtool "foam 
of code and nothing" and can be compiled and linked in 30 seconds 
instead of 3 minutes.

What lies ahead is a lot of renaming and the drop of Guile's dynamic 
extension loading which provoked the core dump and isn't needed anymore. 
As soon as it is considered "usable" it will be available via 
Launchpad's Bazaar.


The short and unreadable path out of the dynamic binary plugging 
"libfoam" world behind me:

* Clean Build
   copy from a configured and made Guile source tree into:
** clean room layout / (it's all libguile)
    link libguile to src
*** src *.c from libguile
**** src/include
      - *.h *.x *.i.c from libguile
      - config.h, libguile.h from /
      -DHAVE_CONFIG_H
**** src/include/libguile -> .
*** src/libguile -> include
** then cmds
- rm debug-malloc.c putenv.c c-tokenize.c gen-scmconfig.c memmove.c
- =cc -pthread -DHAVE_CONFIG_H -I./include -I.. -o vsi *.c -lgmp -lcrypt 
-lm -lltdl=

** load-path as configured - stored in libpath.h
mt@nPong:/opt/VSI/share/guile/1.8$ /opt/VSI/bin/svi
ERROR: In procedure primitive-load-path:
ERROR: Unable to find file "ice-9/boot-9.scm" in load path

** 1st coredump
mt@nPong:~/Desktop/VSI-C/src$ ./vsi
guile> (version)
"1.8.8"
guile> (use-modules (oop goops))
Segmentation fault (core dumped)

* Bugs & Maintenance Issues
** Segmentation Fault for certain modules (use-module ...)
    The modules (oop goops) and (srfi srfi-1) provoke a segmentation
    fault.
*** Remove the dynamic loading capability from the sources
     (see also Stacktrace)
     - no more load_extension (if applicable)
     - no more dynamic call (if applicable)
     - source file location: dynl.[c,h,x]
*** Stacktrace
(gdb) backtrace
#0  0x00007ffff5d342b9 in scm_c_make_subr () from /usr/lib/libguile.so.17
#1  0x00007ffff5d1a048 in ?? () from /usr/lib/libguile.so.17
#2  0x00007ffff5fbd78f in scm_init_srfi_1 ()
    from /usr/lib/libguile-srfi-srfi-1-v-3.so
#3  0x0000000000410dd8 in scm_dynamic_call ()
#4  0x000000000042e1d2 in load_extension ()
#5  0x000000000042e235 in scm_load_extension ()
#6  0x000000000042b584 in deval ()




  parent reply	other threads:[~2015-06-28 20:18 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-26  5:37 Guile 1.8 / Viper System Interface Michael Tiedtke
2015-06-26  6:39 ` David Pirotte
2015-06-26 10:16   ` Michael Tiedtke
2015-06-26 19:36     ` David Pirotte
2015-06-26 20:23       ` Michael Tiedtke
2015-06-27 21:10       ` Thien-Thi Nguyen
2015-06-28 10:12         ` Michael Tiedtke
2015-06-28 15:19         ` klaus schilling
2015-06-28 16:22           ` David Kastrup
2015-07-06 15:15         ` You can pick a flower! (was VSI) Michael Tiedtke
2016-08-25 15:34           ` Thien-Thi Nguyen
2015-06-28 20:18 ` Michael Titke [this message]
2015-06-28 20:18 ` Guile 1.8 / Viper System Interface Michael Tiedtke
2015-06-29  7:11   ` Marco Maggi
2015-06-29  7:55     ` David Kastrup
2015-06-29  8:56       ` Michael Tiedtke
2015-06-29 14:42         ` Tristan Colgate
2015-06-29 14:54         ` David Kastrup
2015-06-29 19:52           ` Michael Tiedtke
2015-06-29 20:15             ` David Kastrup

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5590569B.6020309@o2online.de \
    --to=michael.tiedtke@o2online.de \
    --cc=guile-user@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).