如何链接autotools项目中刚刚构建的库

时间:2015-04-06 08:42:42

标签: makefile autotools automake

如何将autotools项目的test子目录中的可执行文件链接到一个库,比如libfoo,它只是从同一项目的src目录中的文件构建的?

Makefile.am看起来像:

SUBDIRS = src . test
AUTOMAKE_OPTIONS = subdir-objects
ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4

的src / Makefile.am:

ACLCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4
lib_LTLIBRARIES = libfoo.la
libfoo_la_SOURCES = \
    foo.cpp
foo_includedir = $(includedir)/foo
foo_include_HEADERS = \
    foo.hpp

测试/ Makefile.am:

ACLCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4
check_PROGRAMS = footest
footest_SOURCES = \
    main.cpp
footest_LDADD = ?????

1 个答案:

答案 0 :(得分:1)

这很容易:footest_LDADD = ../src/libfoo.la

这适用于'树外'例如,如果您从另一个目录(而不是configure)调用./configure,则构建。