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-11.2 platform.

Package Information

Guile Dependencies


GC-8.0.6 and libunistring-1.0


Emacs-28.1 and GDB-12.1 (run-time only dependencies).

User Notes:

Installation of Guile

Install Guile by running the following commands:

./configure --prefix=/usr    \
            --disable-static \
            --docdir=/usr/share/doc/guile-3.0.8 &&
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.8/{guile.html,ref} &&
mv /usr/share/doc/guile-3.0.8/r5rs{.html,}     &&

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

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

Command Explanations

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


Installed Programs: guild, guile, guile-config, guile-snarf and guile-tools
Installed Libraries: and
Installed Directories: /usr/include/guile, /usr/lib/guile, /usr/share/doc/guile-3.0.8 and /usr/share/guile

Short Descriptions


is a stand-alone Scheme interpreter for Guile


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


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


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


is a symlink to guild