mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 11:50:28 +02:00
145 lines
6.7 KiB
Text
145 lines
6.7 KiB
Text
This is not a Guile release; it is a source tree retrieved via
|
|
anonymous CVS or as a nightly snapshot at some random time after the
|
|
Guile 1.3.4 release.
|
|
|
|
This is version 1.3.5 of Guile, Project GNU's extension language
|
|
library. Guile is an interpreter for Scheme, packaged as a library
|
|
that you can link into your applications to give them their own
|
|
scripting language. Guile will eventually support other languages as
|
|
well, giving users of Guile-based applications a choice of languages.
|
|
|
|
Please send bug reports to bug-guile@gnu.org.
|
|
|
|
Guile Documentation ==================================================
|
|
|
|
There is some preliminary documentation for Guile under the directory
|
|
doc. The real Guile manual is incomplete, and is currently being
|
|
revised. A development snapshot of the manual is available at
|
|
ftp.red-bean.com as /pub/guile/snapshots/guile-doc-snap.tar.gz.
|
|
|
|
|
|
About This Distribution ==============================================
|
|
|
|
Interesting files include:
|
|
- INSTALL, which contains instructions on building and installing Guile.
|
|
- NEWS, which describes user-visible changes since the last release of Guile.
|
|
- COPYING, which describes the terms under which you may redistribute
|
|
Guile, and explains that there is no warranty.
|
|
|
|
Building and installing this distribution gives you:
|
|
guile --- a stand-alone interpreter for Guile, usually installed in
|
|
/usr/local/bin. With no arguments, this is a simple
|
|
interactive Scheme interpreter. It can also be used as an
|
|
interpreter for script files; see the NEWS file for details.
|
|
guile-config --- a Guile script which provides the information necessary
|
|
to link your programs against the Guile library.
|
|
guile-snarf --- a script to parse declarations in your C code for
|
|
Scheme-visible C functions, Scheme objects to be used by C code, etc.
|
|
libguile.a --- an object library containing the Guile interpreter,
|
|
usually installed in /usr/local/lib. You can use Guile in
|
|
your own programs by linking against this.
|
|
libqthreads.a --- an object library containing the QuickThreads
|
|
primitives. If you enabled thread support when you configured
|
|
Guile, you will need to link your code against this too.
|
|
libguilereadline.a --- an object library containing glue code for the
|
|
GNU readline library. See NEWS for instructions on how to enable
|
|
readline for your personal use.
|
|
<libguile.h>, <guile/gh.h>, <libguile/*.h> --- header files for
|
|
libguile.a, usually installed in /usr/local/include.
|
|
ice-9, ice-9/*.scm --- run-time support for Guile: the module
|
|
system, read-eval-print loop, some R4RS code and other
|
|
infrastructure. Usually installed in
|
|
/usr/local/share/guile/<version>.
|
|
data-rep.info --- An essay on how to write C code that works with
|
|
Guile Scheme values.
|
|
|
|
The Guile source tree is laid out as follows:
|
|
|
|
libguile:
|
|
The Guile Scheme interpreter --- both the object library
|
|
for you to link with your programs, and the executable you can run.
|
|
ice-9: Guile's module system, initialization code, and other infrastructure.
|
|
guile-config:
|
|
Source for the guile-config script.
|
|
qt: A cooperative threads package from the University of Washington,
|
|
which Guile can use. If you configure Guile with the
|
|
--with-threads flag, you will need to link against the -lqt
|
|
library, found in this directory. Qt is under a separate
|
|
copyright; see `qt/README' for more details.
|
|
guile-readline:
|
|
The glue code for using GNU readline with Guile. This
|
|
will be build when configure can find a recent enough readline
|
|
library on your system.
|
|
doc: Some preliminary documentation for Guile. The real Guile
|
|
manual is incomplete, and is currently being revised.
|
|
A development snapshot of the manual is available at
|
|
ftp.red-bean.com as /pub/guile/snapshots/guile-doc-snap.tar.gz.
|
|
doc/example-smob: Sample code, discussed in the preliminary
|
|
documentation above, for a program that extends Guile with a
|
|
new data type, and functions that operate on it.
|
|
|
|
|
|
Anonymous CVS Access and FTP snapshots ===============================
|
|
|
|
We make the developers' working Guile sources available via anonymous
|
|
CVS, and by nightly snapshots, accessible via FTP. See the files
|
|
`ANON-CVS' and `SNAPSHOTS' for details.
|
|
|
|
If you would like to receive mail when people commit changes to the
|
|
Guile CVS repository, you can subscribe to guile-cvs@sourceware.cygnus.com
|
|
by sending a message to guile-cvs-subscribe@sourceware.cygnus.com. Even
|
|
better, you can get daily digests of these commit messages by sending
|
|
a message to guile-cvs-digest-subscribe@sourceware.cygnus.com.
|
|
|
|
If you want to subscribe an e-mail address other than the one that
|
|
appears in your From: header, say foo@bar.com, send a mail note to
|
|
guile-cvs-subscribe-foo=bar.com@sourceware.cygnus.com.
|
|
|
|
|
|
Hacking It Yourself ==================================================
|
|
|
|
As distributed, Guile needs only an ANSI C compiler and a Unix system
|
|
to compile. However, Guile's makefiles, configuration scripts, and a
|
|
few other files are automatically generated, not written by hand. If
|
|
you want to make changes to the system (which we encourage!) you will
|
|
find it helpful to have the tools we use to develop Guile. They
|
|
are the following:
|
|
|
|
Autoconf 2.13 --- a system for automatically generating `configure'
|
|
scripts from templates which list the non-portable features a
|
|
program would like to use. Available in
|
|
"ftp://ftp.gnu.org/pub/gnu/autoconf"
|
|
|
|
Automake 1.4 --- a system for automatically generating Makefiles that
|
|
conform to the (rather Byzantine) GNU coding standards. The
|
|
nice thing is that it takes care of hairy targets like 'make
|
|
dist' and 'make distclean', and automatically generates
|
|
Makefile dependencies. Automake is available in
|
|
"ftp://ftp.gnu.org/pub/gnu/automake"
|
|
|
|
Before using automake, you may need to copy `threads.m4' and
|
|
`guile.m4' from the top directory of the Guile core disty to
|
|
`/usr/local/share/aclocal.
|
|
|
|
libtool 1.3.3 --- a system for managing the zillion hairy options needed
|
|
on various systems to produce shared libraries. Available in
|
|
"ftp://ftp.gnu.org/pub/gnu/libtool"
|
|
|
|
You are lost in a little maze of automatically generated files, all
|
|
different.
|
|
>
|
|
|
|
|
|
Obtaining Guile ======================================================
|
|
|
|
The latest official Guile release is available via anonymous FTP from
|
|
ftp.gnu.org, as /pub/gnu/guile/guile-1.3.4.tar.gz.
|
|
|
|
Via the web, that's: ftp://ftp.gnu.org/pub/gnu/guile/guile-1.3.4.tar.gz
|
|
For getit, that's: ftp.gnu.org:/pub/gnu/guile/guile-1.3.4.tar.gz
|
|
|
|
The mailing list `guile@sourceware.cygnus.com' carries discussions,
|
|
questions, and often answers, about Guile. To subscribe, send mail to
|
|
guile-subscribe@sourceware.cygnus.com. Of course, please send bug
|
|
reports (and fixes!) to bug-guile@gnu.org. Note that one address is
|
|
@sourceware.cygnus.com, and the other is at @gnu.org.
|