CAPS Universe documentation  1.0.4
All you need to know to be successful
Using libcapsmime

The regular user who wants to print something isn't the audience of this section. Here the user is the developer of a different CAPS component, which just use libcapsmime.

Use pkg-config

Don't try to be smart, use pkg-config instead to retrieve the information you need to compile and link your application against libcapsmime.

To compile your code, just include its header:

#include <libcapsmime.h>
API declaration to handle MIME types.

And ask pkg-config what include path is required to find this header file.

pkg-config --cflags libcapsmime

To link your application against libcapsmime ask pkg-config as well. Use the output of this command to parametrize the linker:

pkg-config --libs libcapsmime
Note
Whenever you call a function from libcapsmime in your application you also must link it against libcapsmime. Different libraries you use may already be linked against libcapsmime, but that does not work for your application when the linker option --as-needed is in use (which is the default in the CAPS universe).

Use autotools

Don't invent your own Makefile to build your package. Use the autotools or something similar to manage your buildsystem.

For the autotools just use the PKG_CHECK_MODULES m4 macro in your configure.ac to get the information you need to use libcapsmime:

PKG_CHECK_MODULES([LIBCAPSMIME], [libcapsmime >= 1])

And then just refer this information in your Makefile.am:

my_application_CPPFLAGS = \
     @LIBCAPSMIME_CFLAGS@
my_application_LDADD = \
     @LIBCAPSMIME_LIBS@

Refer Base function for details.