Node:Linking Programs With Guile, Next:Writing Extensions for Guile, Previous:Guile Scripts, Up:Whirlwind Tour
The Guile interpreter is available as an object library, to be linked into applications using Scheme as a configuration or extension language. This chapter covers the mechanics of linking your program with Guile on a typical POSIX system.
Parts III and IV of this manual describe the C functions Guile provides. Furthermore, any Scheme function described in this manual as a "Primitive" is also callable from C; see Primitives.
The header file <libguile.h>
provides declarations for all of
Guile's functions and constants. You should #include
it at the
head of any C source file that uses identifiers described in this
manual. Once you've compiled your source files, you need to link them
against the Guile object code library, libguile
.
On most systems, you should not need to tell the compiler and linker
explicitly where they can find libguile.h
and libguile
.
When Guile has been installed in a peculiar way, or when you are on a
peculiar system, things might not be so easy and you might need to pass
additional -I
or -L
options to the compiler. Guile
provides the utility program guile-config
to help you find the
right values for these options. You would typically run
guile-config
during the configuration phase of your program and
use the obtained information in the Makefile.