Guile-3.0.9

Introduction to Guile

The Guile package contains the GNU Project's extension language library. Guile also contains a stand alone Scheme interpreter.

This package is known to build and work properly using an LFS 12.1 platform.

Package Information

  • Download (HTTP): https://ftp.gnu.org/gnu/guile/guile-3.0.9.tar.xz

  • Download MD5 sum: 258983e0156c2bc66539dcbcb96f2bd2

  • Download size: 5.5 MB

  • Estimated disk space required: 221 MB (add 4 MB for tests)

  • Estimated build time: 5.9 SBU (Using parallelism=4; add 0.3 SBU for tests)

Guile Dependencies

Required

GC-8.2.6 and libunistring-1.1

Optional

Emacs-29.2 and GDB-14.1 (run-time only dependencies).

Installation of Guile

Install Guile by running the following commands:

./configure --prefix=/usr    \
            --disable-static \
            --docdir=/usr/share/doc/guile-3.0.9 &&
make      &&
make html &&

makeinfo --plaintext -o doc/r5rs/r5rs.txt doc/r5rs/r5rs.texi &&
makeinfo --plaintext -o doc/ref/guile.txt doc/ref/guile.texi

To test the results, issue: ./check-guile. On an i686 system, as many as 10 tests will fail in the numbers.test test suite due to minor floating-point rounding errors.

Now, as the root user:

make install      &&
make install-html &&

mkdir -p                       /usr/share/gdb/auto-load/usr/lib &&
mv /usr/lib/libguile-*-gdb.scm /usr/share/gdb/auto-load/usr/lib &&
mv /usr/share/doc/guile-3.0.9/{guile.html,ref} &&
mv /usr/share/doc/guile-3.0.9/r5rs{.html,}     &&

find examples -name "Makefile*" -delete         &&
cp -vR examples   /usr/share/doc/guile-3.0.9   &&

for DIRNAME in r5rs ref; do
  install -v -m644  doc/${DIRNAME}/*.txt \
                    /usr/share/doc/guile-3.0.9/${DIRNAME}
done &&
unset DIRNAME

Command Explanations

--disable-static: This switch prevents installation of static versions of the libraries.

Contents

Installed Programs: guild, guile, guile-config, guile-snarf and guile-tools
Installed Libraries: libguile-3.0.so and guile-readline.so
Installed Directories: /usr/include/guile, /usr/lib/guile, /usr/share/doc/guile-3.0.9 and /usr/share/guile

Short Descriptions

guile

is a stand-alone Scheme interpreter for Guile

guile-config

is a Guile script which provides the information necessary to link your programs against the Guile library, in much the same way PkgConfig does

guile-snarf

is a script to parse declarations in your C code for Scheme visible C functions

guild

is a wrapper program installed along with guile, which knows where a particular module is installed and calls it, passing its arguments to the program

guile-tools

is a symlink to guild