Starbug1 デモ GNU Makefileで条件分岐
2008/01/24
0.1.2-beta版が出てから時間が経ってしまいましたが、さくらインターネットのデモを更新しようとしました。
csvでのレポートダウンロードのために、iconvを使うようにしたので、FreeBSDでコンパイル時にエラーが出ていました。
gcc -o index.cgi list.o data.o dbutil.o db.o mail.o util.o wiki.o index.o -L/usr/local/lib -L/home/smeghead/lib -lsqlite3 -lcgic util.o(.text+0x16b4): In function `csv_field': : undefined reference to `libiconv_open' util.o(.text+0x16d1): In function `csv_field': : undefined reference to `libiconv' util.o(.text+0x1700): In function `csv_field': : undefined reference to `libiconv_close' gmake: *** [index.cgi] Error 1
ただ単に、FreeBSDではリンク時に -liconvが必要だったようです。linuxは、glibcにiconvが含まれていて、FreeBSDは、外部のlibiconvを使うようになっているようです。
http://naname.jp/index.php?Makefile を参考にMakefileにOS用の条件分岐を付けました。
OS = ${shell uname} ifeq ($(OS), FreeBSD) LFLAGS += -liconv endif
Starbug1 のデモを更新しました。
デモURL http://smeghead.sakura.ne.jp/starbug1/
CVSの先端の状態なので、0.1.2-betaより更に機能が追加されています。
昨日のJavaScriptのグラフ(HTML5.JP)も反映されてますので、統計情報を見てみてください。