CentOSでperlのGDモジュールをインストール

| コメント(0) | トラックバック(0)

CentOS4.5でperlからQRコードを生成したかったのでやってみたらGDが入ってなかったのでPerlのGDモジュールをインストールするまでのメモ

最初CPANからいきなり入れてみようとした

●スーパーユーザーになって


$ su -
Password:
#

●CPANのシェルを起動


# perl -MCPAN -e shell
cpan shell -- CPAN exploration and modules installation (v1.7601)
ReadLine support enabled

cpan>

●インストール実行


cpan> install GD

●質問には全部エンターで答えた


Where is libgd installed? [/usr/lib]

Please choose the features that match how libgd was built:
Build JPEG support? [y]
Build PNG support? [y]
Build FreeType support? [y]
Build GIF support? [y]
Build support for animated GIFs? [y]
Build XPM support? [y]

●なんかエラーがいっぱい


GD.xs:7:16: gd.h: No such file or directory
GD.xs:8:21: gdfontg.h: No such file or directory
GD.xs:9:21: gdfontl.h: No such file or directory
GD.xs:10:22: gdfontmb.h: No such file or directory
GD.xs:11:21: gdfonts.h: No such file or directory
GD.xs:12:21: gdfontt.h: No such file or directory
GD.xs:340: error: syntax error before "GD__Image"
GD.xs:340: warning: data definition has no type or storage class
GD.xs:341: error: syntax error before "GD__Font"
GD.xs:341: warning: data definition has no type or storage class

(中略)

make: *** [GD.o] Error 1
/usr/bin/make -- NOT OK
Running make test
Can't test without successful make
Running make install
make had returned bad status, install seems impossible

cpan>

●で、ちゃんと調べてみた

GDをソースからインストールしようかと思ったが、yumでインストールされているものをアンインストールしたりとか依存関係が変になるのも嫌なのでyumでインストールされているものを何とか生かしてそのままやることにした。これでだめならソースからインストールしようと思った。

●下記のコマンドなどで必要なモジュールがインストールされているか調べてみた


# rpm -qa|grep gd-
# rpm -qa|grep libpng

●下記はrpmでインストールされているようだった。少しはまったが良く考えてみるとdevelがないことに気が付いた。
gd
libpng
liblpeg
zlib
zlib-devel

●yumで必要そうなものをインストールした。

yum search gd-
yum info gd-
等してdevelがあるかあらかじめ調べた

yum install gd-devel yum install libpng-devel yum install libjpeg-devel


●再度CPANからGDインストール実行


cpan> install GD

●コンパイルは通るようになったが、make testで「gdImageGifAnimAddPtr 」関係でなんかエラーがでている。


t/GD..........Can't load './blib/arch/auto/GD/GD.so' for module GD: ./blib/arch/auto/GD/GD.so: undefined symbol: gdImageGifAnimAddPtr at /usr/lib/perl5/5.8.5/i386-linux-thread-multi/DynaLoader.pm line 230.

●とりあえずアニメーションgif関係っぽいなーと思いながらgif使わないからいいやと言うことで再度GDのインストールを行う。今回は質問にちゃんと答えてみた。

JPEGはつかわないのだけどとりあえずy
PNGは使うのでy
文字は使わないのでFreeTypeはN
GIFはとりあえずy
GIFアニメは使わないのでN
XPMは使わないのでN

Where is libgd installed? [/usr/lib] <エンター>

Please choose the features that match how libgd was built:
Build JPEG support? [y]<エンター>
Build PNG support? [y]<エンター>
Build FreeType support? [y] N
Build GIF support? [y] <エンター>
Build support for animated GIFs? [y] N
Build XPM support? [y] N

これでインストールに成功した。

CPANから
install GD::Barcode
もインストールしてQRコードの生成に成功した。

※ちゃんと調べてないのでgdImageGifAnimAddPtr でエラーが出ている件については未解決だが
ソースからビルドしてインストールしたgd-2.0.33のサーバーは問題なかったので
CentOSのサーバーに元からインストールされているgd-2.0.28が古いのでとGD,pm-2.35の相性じゃないかなーと勝手に思ってます。わかる人はちゃんと調べましょう。(お


※リコンパイル(最コンパイル)したい時
CPANでインストールした後、インストール時に聞かれる質問事項を変更して再インストールしたい時はCPANを抜けてダウンロードしたモジュールのソースが格納されているところに直接行ってコンパイルする。
(単にCPANからのやり方がわからないからですが・・・)

ソースは/root/.cpan/build配下に有ります。(CPANの設定で変わるのかな?)

cd /root/.cpan/build/GD-2.35 perl Makefile.PL make test make install

▼関連記事

トラックバック(0)

ここだよ

トラックバックスパム対策の為この記事にトラックバックを行うにはトラックバック元の記事中にこのページのURL「http://blog.kumacchi.com/2007/11/centosperlgd.html」を含めてください。

コメントする

よく読まれている記事

アクセスランキング

QRコード

マイページ

スポンサードリンク

このブログ記事について

このページは、くまっちが2007年11月27日 00:43に書いたブログ記事です。

ひとつ前のブログ記事は「おいでよ どうぶつの森私的攻略メモ」です。

次のブログ記事は「Core2DuoのCPUファンの外し方」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

  • seo
track feed KUMA TYPE スカウター : KUMA TYPE フィードメーター - KUMA TYPE あわせて読みたい