From: erg Date: Mon, 27 Apr 2009 22:15:51 +0000 (+0000) Subject: Update build appendix to include pathplan, and new libraries. X-Git-Tag: LAST_LIBGRAPH~32^2~2138 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1512215abf1ac5292706834650b3b9fe36ff1acd;p=graphviz Update build appendix to include pathplan, and new libraries. --- diff --git a/doc/libguide/build.tex b/doc/libguide/build.tex index 73cbd2368..c999e066e 100644 --- a/doc/libguide/build.tex +++ b/doc/libguide/build.tex @@ -1,5 +1,13 @@ \section{Compiling and linking} \label{sec:build} +This appendix provides a brief description of how to build +your program using \gviz\ as a library. It also notes the +various libraries involved. As compilation systems vary +greatly, we make no attempt to provide low-level build +instructions. We assume that the user is capable of tailoring +the build environment to use the necessary include files and +libraries. + All of the necessary include files and libraries are available in the {\tt include} and {\tt lib} directories where \gviz\ is installed. At the simplest level, all an application needs @@ -12,22 +20,41 @@ For linking, the application should use the \gviz\ libraries \begin{itemize} \item {\tt gvc} \item {\tt graph} -\item {\tt cdt}\footnote{ +\item {\tt pathplan} +\item {\tt cdt} +\end{itemize} +If the system is configured to use plug-ins, these libraries +are all that are necessary. At run time, the program will +load the dynamic libraries it needs. + +If the program does not use plug-ins, then these libraries +need to be incorporated at link time. These libraries may +include +\begin{itemize} +\item {\tt gvplugin\_dot\_layout} +\item {\tt gvplugin\_neato\_layout} +\item {\tt gvplugin\_gd} +\item {\tt gvplugin\_pangocairo}\footnote{ For completeness, we note that it may be necessary to explicitly link in the following additional libraries, depending on the options set when \gviz\ was built: {\tt expat}, {\tt fontconfig}, {\tt freetype2}, +{\tt pangocairo}, +{\tt cairo}, +{\tt pango}, +{\tt gd}, {\tt jpeg}, {\tt png}, -{\tt z}, and -{\tt ltdl}. +{\tt z}, +{\tt ltdl}, +and other libraries required by Cairo and Pango. Typically, though, most builds handle these implicitly.} \end{itemize} +plus any other plug-ins the program requires. -If \gviz\ is built and installed with the GNU build tools -(This includes the current Windows binary package), +If \gviz\ is built and installed with the GNU build tools, there are package configure files created in the {\tt lib/pkgconfig} directory which can be used with the {\tt pkg-config} program to obtain the include file and library information for @@ -41,7 +68,7 @@ could have the form: \begin{verbatim} CFLAGS=`pkg-config libgvc --cflags` -Wall -g -O2 -LDFLAGS=-Wl,--rpath -Wl,`pkg-config libgvc --variable=libdir` `pkg-config libgvc --libs` +LDFLAGS=`pkg-config libgvc --libs` all: simple dot demo diff --git a/doc/libguide/libguide.pdf b/doc/libguide/libguide.pdf index 15dda441e..31399d3f0 100644 Binary files a/doc/libguide/libguide.pdf and b/doc/libguide/libguide.pdf differ