Что должно появиться в Makefile.am, configure.ac и источнике, чтобы связать библиотеку с программой с помощью Autotools?
Мой (в настоящее время тривиальный) проект настраивает, собирает и запускает ОК, но я хочу привести его в порядок.
В настоящее время у меня есть configure.ac:
dnl Process this file with autoconf to produce a configure script.
AC_PREREQ(2.59)
AC_INIT(foo, 1.0)
AC_CANONICAL_SYSTEM
AM_INIT_AUTOMAKE()
AC_PROG_CC
AC_CONFIG_FILES(Makefile src/Makefile)
AC_OUTPUT
PKG_CHECK_MODULES([DEPS], [apr-1 >= 1.4.2])
Makefile.am (в src /):
bin_PROGRAMS=a.out
a_out_SOURCES=foo.c
a_out_LDADD = /usr/lib/libapr-1.so
и foo.c:
...
#include <apr-1.0/apr_general.h>
#include <apr-1.0/apr_pools.h>
...
Я хочу избавиться от жестко закодированного пути к / usr / lib / libapr-1.so в Makefile.am и относительные пути #include в foo.c.Я полагаю, что PKG_CHECK_MODULES может найти и сообщить мне расположение файлов, связанных с libapr.
Как мне изменить эти файлы, чтобы это работало?
Спасибо,
Крис.