mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-15 08:10:17 +02:00
manual: reorganize autoconf, pkg-config info
* doc/ref/libguile-parallel.texi: New file, documenting parallel installation and the use of pkg-config. * doc/ref/libguile-linking.texi: Adapt. * doc/ref/libguile-autoconf.texi: Rename from autoconf.texi. Lower sections, and integrate in the "Programming in C" chapter. * doc/ref/guile.texi: Adapt.
This commit is contained in:
parent
b09179d0eb
commit
d32df1325d
4 changed files with 77 additions and 48 deletions
48
doc/ref/libguile-parallel.texi
Normal file
48
doc/ref/libguile-parallel.texi
Normal file
|
@ -0,0 +1,48 @@
|
|||
@c -*-texinfo-*-
|
||||
@c This is part of the GNU Guile Reference Manual.
|
||||
@c Copyright (C) 1996, 1997, 2000, 2001, 2002, 2003, 2004, 2005, 2010, 2011
|
||||
@c Free Software Foundation, Inc.
|
||||
@c See the file guile.texi for copying conditions.
|
||||
|
||||
@node Parallel Installations
|
||||
@section Parallel Installations
|
||||
|
||||
@cindex pkg-config
|
||||
@cindex effective version
|
||||
|
||||
Guile provides strong API and ABI stability guarantees during stable
|
||||
series, so that if a user writes a program against Guile version 2.0.3,
|
||||
it will be compatible with some future version 2.0.7. We say in this
|
||||
case that 2.0 is the @dfn{effective version}, composed of the major and
|
||||
minor versions, in this case 2 and 0.
|
||||
|
||||
Users may install multiple effective versions of Guile, with each
|
||||
version's headers, libraries, and Scheme files under their own
|
||||
directories. This provides the necessary stability guarantee for users,
|
||||
while also allowing Guile developers to evolve the language and its
|
||||
implementation.
|
||||
|
||||
However, parallel installability does have a down-side, in that users
|
||||
need to know which version of Guile to ask for, when they build against
|
||||
Guile. Guile solves this problem by installing a file to be read by the
|
||||
@code{pkg-config} utility, a tool to query installed packages by name.
|
||||
Guile encodes the version into its pkg-config name, so that users can
|
||||
ask for @code{guile-2.0} or @code{guile-2.2}, as appropriate.
|
||||
|
||||
For effective version @value{EFFECTIVE-VERSION}, for example, you would
|
||||
invoke @code{pkg-config --cflags --libs guile-@value{EFFECTIVE-VERSION}}
|
||||
to get the compilation and linking flags necessary to link to version
|
||||
@value{EFFECTIVE-VERSION} of Guile. You would typically run
|
||||
@code{pkg-config} during the configuration phase of your program and use
|
||||
the obtained information in the Makefile.
|
||||
|
||||
See the @code{pkg-config} man page, for more information, or its web
|
||||
site, @url{http://pkg-config.freedesktop.org/}.
|
||||
|
||||
@xref{Autoconf Support}, for more on checking for Guile from within a
|
||||
@code{configure.ac} file.
|
||||
|
||||
|
||||
@c Local Variables:
|
||||
@c TeX-master: "guile.texi"
|
||||
@c End:
|
Loading…
Add table
Add a link
Reference in a new issue