そうです、私がグヌウの信者です。
今日の話題はAutomakeです。
Automakeを使うと、何がうれしいのか。
それは、Makefileを書くのが楽になるからです。
Makefile.amにファイル名を追加するだけでよくなります。
Automakeを使うのに最低限必要なファイルは「configure.ac」と「Makefile.am」の二つだけです。
あとは、「autoreconf -i」とかしておけば、必要なファイルは全て自動で揃いますので心配ありません。
# プログラム名とそのインストール先ディレクトリ(ここではbin)の指定 bin_PROGRAMS = helloworld # プログラムhelloworldを作るのに必要なファイルの指定 helloworld_SOURCES = helloworld.c
# Autoconf初期化([パッケージ名]、 [バージョン]) AC_INIT([hoge], [1]) # Automake初期化([オプション]) # ( foreignオプションをつけると、NEWSとかREADMEとかを作る必要が無くなる ) AM_INIT_AUTOMAKE([foreign]) # 作成するファイル名 # ここでは、Makefile.in から、Makefileを生成することを指定 AC_CONFIG_FILES([Makefile]) # C言語のファイルをサポートするように設定 # (具体的にどんな意味があるのか分かってない(汗) AC_PROG_CC # config.statusや、Makefileを作成する(らしい) AC_OUTPUT()
/* これは単なるサンプルプログラム */ #include <stdio.h> int main() { printf("Hello World!"); }
手順2: autoreconf -iを実行します
手順3: ./configureを実行します
手順4: makeを実行すると、helloworldがコンパイルされます。
ワンポイントメモ: 「ターゲットがありません」系のエラーが出たら、Makefile.amの記述ミスが考えられます。見直しをしてから、./configureからやり直すと、幸せになれるかもしれません。