計算機メモ目次 (目的のページと内容が一致しない場合, 目次から探してください)
AIX 5.3 にて netpbm-10.35.83 を構築する
必要なもの
TIFFライブラリ
JPEG/JFIFライブラリ
PNGライブラリ
ZLIBライブラリ
Ghostscript
GNU make
Perl
コンフィグレーション
configure コマンドを実行(オプションはつけずインタラクティブに実行)
./configure
次のように答えていく
Hit ENTER to begin. エンター
Platform [aix] ==> エンター(デフォルトのまま)
gcc or cc [cc] ==> エンター(デフォルトのまま)
regular or merge [regular] ==> エンター(デフォルトのまま)
static or shared [shared] ==> エンター(デフォルトのまま)
'#include' argument or NONE [<inttypes.h>] ==> エンター(デフォルトのまま)
library filename or 'none' [libjpeg.a] ==> エンター(デフォルトのまま)
JPEG header directory [default] ==> /home/ocg/pub/include(自分の環境)
library filename or 'none' [libtiff.a] ==> エンター(デフォルトのまま)
TIFF header directory [default] ==> /home/ocg/pub/include(自分の環境)
library filename or 'none' [libpng.a] ==> エンター(デフォルトのまま)
PNG header directory [default] ==> /home/ocg/pub/include(自分の環境)
library filename or 'none' [libz.a] ==> エンター(デフォルトのまま)
Z header directory [default] ==> /home/ocg/pub/include(自分の環境)
library filename or 'none' [/usr/X11R6/lib/libX11.a] ==> none(AIXのXシステムでは不可)
Documentation URL [http://netpbm.sourceforge.net/doc/] ==> エンター(デフォルトのまま)
ビルド
netpbm の古いバージョンがインストールされてあったら消しておくこと
特に pm.h が邪魔になる
gmake
converter/other/jpeg2000/libjasper/base にある jas_stream.c のコンパイルに
失敗するので c99 でコンパイルし直す
cd converter/other/jpeg2000/libjasper/base
c99 -c -I/home/ocg/daigo/source/netpbm-10.35.83/converter/other/jpeg2000/libjasper/base/../include -Iimportinc -DHAVE_LIBM=1 -DSTDC_HEADERS=1 -DHAVE_FCNTL_H=1 -DHAVE_LIMITS_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STDDEF_H=1 -DEXCLUDE_BMP_SUPPORT -DEXCLUDE_RAS_SUPPORT -DEXCLUDE_MIF_SUPPORT -DEXCLUDE_JPG_SUPPORT -DEXCLUDE_PGX_SUPPORT -DEXCLUDE_PNM_SUPPORT jas_stream.c
トップのディレクトリに戻ってビルドの再開
gmake
editor にある pnmremap.c のコンパイルがコメントの書き方の違いで失敗するので
書き換える
vi editor/pnmremap.c
679行目
assert(defaultColor); // Otherwise, lookup would have succeeded
を
assert(defaultColor); /* Otherwise, lookup would have succeeded */
にする
ビルドの再開
gmake
インストール
次のコマンドを実行
gmake package pkgdir=$HOME/tmp/netpbm-10.35.83
$HOME/tmp の下にできた bin, lib, include, man にあるものを
/usr/local の下などにコピー
link の下のものは lib に統合
misc の下のものは /usr/local/share/netpbm などを作ってそこにコピー
(本プログラムでは misc のものは利用しないのでどこでもよい)
計算機メモ目次 (目的のページと内容が一致しない場合, 目次から探してください)