Next: Feature Tracking, Previous: Examples of option use, Up: Options and Config
It is often useful to have site-specific information about the current Guile installation. This chapter describes how to find out about Guile's configuration at run time.
Return a string describing Guile's version number, or its major or minor version numbers, respectively.
(version) ⇒ "1.3a" (major-version) ⇒ "1" (minor-version) ⇒ "3a"
Return the name of the directory where Scheme packages, modules and libraries are kept. On most Unix systems, this will be /usr/local/share/guile.
Return the directory where the Guile Scheme library files are installed. E.g., may return "/usr/lib/guile/1.3.5".
Return the directory where the Guile site files are installed. E.g., may return "/usr/share/guile/site".
Parse path, which is expected to be a colon-separated string, into a list and return the resulting list with tail (defaults to the empty list) appended. If path is
#f, return tail.
Search path for a directory containing a file named filename. The file must be readable, and not a directory. If we find one, return its full filename; otherwise, return
#f. If filename is absolute, return it unchanged. Optional third arg extensions is a list of strings; for each directory in path, we search for filename concatenated with each extension.
List of directories which should be searched for Scheme modules and libraries.
Alist of information collected during the building of a particular
guileprogram. Entries can be grouped into one of several categories: directories, env vars, and versioning info.Briefly, here are the keys in
%guile-build-info, by group:
- directories srcdir, top_srcdir, prefix, exec_prefix, bindir, sbindir, libexecdir, datadir, sysconfdir, sharedstatedir, localstatedir, libdir, infodir, mandir, includedir, pkgdatadir, pkglibdir, pkgincludedir
- env vars LIBS
- versioning info guileversion, libguileinterface
Values are all strings. The value for
LIBSis typically found also as a part of "guile-config link" output. The value forguileversionhas form X.Y.Z, and should be the same as returned byversion. The value forlibguileinterfaceis libtool compatible and has form CURRENT:REVISION:AGE.
A great many other configuration variables (as set by configure
during Guile build), as well as the #defined symbols from
libguile/scmconfig.h, are available in the module (scripts
guile-config-data). These are also accessible using the
guile-config program (see guile-tools guile-config).