私はautotoolsを初めて使用し、autotoolsを使用してライブラリと実行可能ファイルをパッケージ化する方法の例を探していました。実行可能ファイルはライブラリに依存するため、最初にライブラリをビルドする必要があります。
これまでのところ、ライブラリを独自にパッケージ化しており、実行可能ファイルをコンパイルして、インストール後にライブラリにリンクすることができました。そのプロセスのMakefile.amは次のとおりです。
lib_LTLIBRARIES = libfoo.1.0.0.la
libfoo_1_0_0_la_SOURCES = libfoo.c
library_includedir=$(includedir)
library_include_HEADERS = libfoo.h
次に、configure.acファイルLT_INIT
で、適切な場所に行を追加しました。すべてがうまく構築され、機能します。コンパイル可能なライブラリを使用するファイルfoo.cがありますがgcc foo.c -o foo -lfoo
、autotoolsパッケージを拡張してfoo実行可能ファイルを含めたいので、これを行う方法がわかりません。Makefile.amを次のように変更しました。
bin_PROGRAMS=foo
foo_SOURCES=foo.c
foo_DEPENDENCIES=libfoo.1.0.0.la
lib_LTLIBRARIES = libfoo.1.0.0.la
libfoo_1_0_0_la_SOURCES = libfoo.c
library_includedir=$(includedir)
library_include_HEADERS = libfoo.h
私のconfigure.ac
ファイルは変更されていません。私が作成するまではすべて正常に動作します。この時点では、foo.cが最初にコンパイルされ、libfooの関数が使用できないため、明らかに多くのエラーがスローされるようです。私はこのような例を探しましたが、今のところ運がありませんでした。どんな助けでもいただければ幸いです。