automakeを突っ込んで勉強してみる(その4 〜 メイン機能 〜)
はじめに
automakeを突っ込んで勉強してみる(その3 〜 サブ機能 〜) - tomohikosevenの日記 からの続きである。
目標
メイン機能でやりたいことは以下の2点である。
- 動的ライブラリのリンク
- 静的ライブラリのリンク
メイン機能の全体像とファイル
メイン機能のディレクトリ構造は以下のとおり
+- main <==== メイン機能 +- bin ★ 実行バイナリ生成先 +- src |- Makefile.am ★ Makefile `- main.c ★ メイン機能実態
各ファイルの中身
メイン機能で必要なファイル群の中身を下記に示す。
Makefile.am
bindir = ../bin ★ 実行バイナリインストール先 bin_PROGRAMS=main ★ 実行バイナリ名 main_SOURCES=main.c ★ ソース main_LDFLAGS=-L../../common/lib ★ 共通機能の静的ライブラリディレクトリ main_LDFLAGS+=-L../../sub/lib ★ サブ機能の動的ライブラリディレクトリ main_LDADD=-lcommon -lsub ★ リンク main_CFLAGS=-I../../common/include -I../../sub/include ★ 共通機能およびサブ機能のヘッダファイルディレクトリ
main.c
#include#include"common.h" #include"sub.h" int main() { print_common(); print_sub(); printf( "%s\n", __func__ ); return 0; }
automakeを突っ込んで勉強してみる(その5 〜 ビルドおよび実行 〜) - tomohikosevenの日記 に続く