GNU Info

Info Node: (gpgme.info)Building the Source

(gpgme.info)Building the Source


Next: Library Version Check Prev: Header Up: Preparation
Enter node , (file) or (file)node

Building the Source
===================

   If you want to compile a source file including the `gpgme.h' header
file, you must make sure that the compiler can find it in the directory
hierarchy.  This is accomplished by adding the path to the directory in
which the header file is located to the compilers include file search
path (via the `-I' option).

   However, the path to the include file is determined at the time the
source is configured.  To solve this problem, gpgme ships with a small
helper program `gpgme-config' that knows about the path to the include
file and other configuration options.  The options that need to be
added to the compiler invocation at compile time are output by the
`--cflags' option to `gpgme-config'.  The following example shows how
it can be used at the command line:

     gcc -c foo.c `gpgme-config --cflags`

   Adding the output of `gpgme-config --cflags' to the compilers
command line will ensure that the compiler can find the GPGME header
file.

   A similar problem occurs when linking the program with the library.
Again, the compiler has to find the library files.  For this to work,
the path to the library files has to be added to the library search
path (via the `-L' option).  For this, the option `--libs' to
`gpgme-config' can be used.  For convenience, this option also outputs
all other options that are required to link the program with GPGME (in
particular, the `-lgpgme' option).  The example shows how to link
`foo.o' with the GPGME library to a program `foo'.

     gcc -o foo foo.o `gpgme-config --libs`

   Of course you can also combine both examples to a single command by
specifying both options to `gpgme-config':

     gcc -o foo foo.c `gpgme-config --cflags --libs`


automatically generated by info2www version 1.2.2.9