curlエクステンションが組み込めません。

curlエクステンションが組み込めません。

- 三橋 裕司 の投稿
返信数: 11
当方は
linux 2.4.20-31.9
mysql 5.0.27
php 5.2.3
moodle1.8.2
でMOODLEを構築しましたが、curlが組み込めません。そのことが原因なのか、
画像の挿入が出来ません。代替ファイルを印字するだけです。
プロフィールに写真を挿入しようとすると、このサーバーではJPEGに対応していません。と言うメッセージがでます。私の知識では、解決不可能のようです。
configureメッセージは添付しました。
何がいけないか知っている人がいましたら、御教授ください。


三橋 裕司 への返信

プロフィールの写真がバグる

- Yuuichi Yamaguchi の投稿

三橋さんの現象と同じかどうかわかりませんが、似ているかなとおもい、

こちらに書き込まさせていただきました。

ユーザ → プロフィールの編集 から
【新しい写真】を選択し、【プロフィールを更新する】をクリックしました。

そして、【プロフィール】を確認しましたら、
さきほど【新しい写真】で選択した画像とはまったく違う画像が表示されていました
このメッセージの添付画像が、そのときの画面になっています。

私もサーバでのエクステンションの設定等がおかしいのでしょうか
phpinfo();を確認しましたら
PHP Version 4.4.7で
ctype
curl
gd
iconv
mbstring
mysql
openssl
overload
pcre
posix
session
tokenizer
xml
zlib
などが出力されております。

何かのヒントか手がかりだけでもよいです。
また、予想される不具合の箇所等、少しでも考えられることがありましたら、
教えていただけないでしょうか?よろしくお願いいたします。

添付 _.JPG
Yuuichi Yamaguchi への返信

Re: プロフィールの写真がバグる

- Takayuki Fukuyama の投稿
福山です

こちらはかなり歪な状態になっていてよくわからないのですが、おそらくはGDによる処理が上手くいっていないのではないかと推察されます。
この辺をやっているのはlib/gdlib.php内のsave_profile_image関数だとかですので、この辺をちくちく弄ってみて、どこでおかしくなっているのか調べてみる必要があるかもしれません
Takayuki Fukuyama への返信

Re: プロフィールの写真がバグる

- Yuuichi Yamaguchi の投稿

福山様

早速のご返信ありがとうございます。下記にphpinfo();のgd部分を転記します。何かお分かりでしたら、ご教授いただけないでしょうか?

gd

GD Support enabled
GD Version bundled (2.0.28 compatible)
FreeType Support enabled
FreeType Linkage with freetype
T1Lib Support enabled
GIF Read Support enabled
GIF Create Support enabled
JPG Support enabled
PNG Support enabled
WBMP Support enabled
XBM Support enabled
JIS-mapped Japanese Font Support enabled
Yuuichi Yamaguchi への返信

Re: プロフィールの写真がバグる

- Takayuki Fukuyama の投稿

phpinfoが報告しているGDの情報には不都合は見られないですね。。。

以下の点はどうでしょうか

  • 特定の画像だけではなく全ての画像が同じように乱れる
  • Jpeg、GIF、PNGのいずれのフォーマットも同じように乱れる

特定の画像だけ乱れる場合はイメージフォーマットと縦横ピクセルはどのような画像になっておりますでしょうか。
moodle側がおかしいのか、それともPHPの状態があやしいのかが少し切りわけられていない状態です。
必要であればsave_profile_image関数が呼び出している(実際にはそこから呼ばれているImageCopyBicubic)部分を
切り出して異なる環境で調査するといった事も必要になってくるかもしれません。

三橋 裕司 への返信

Re: curlエクステンションが組み込めません。

- Takayuki Fukuyama の投稿
福山と申します

添付されているエラーの内容ですと

checking for cURL 7.10.5 or greater... configure: error: cURL version 7.10.5 or
later is required to compile php with cURL support

とありますのでおそらくはcURLのバージョンが低い(のかもしくは低いものを見にいってしまっている)と考えられます。

またprofileの画像のjpegサポートの話はGDエクステンションとjpegのサポートが必要でおそらくは後者が欠けているのではないでしょうか。
phpinfoで確認できますが

JPG Support enabled

のように出てないといけないと思います
これを有効にするには、自前ビルドを行うのであれば--with-jpeg(-dir=path)だったと思いますが、このような感じで組みこむ必要があると思います
Takayuki Fukuyama への返信

Re: curlエクステンションが組み込めません。

- 三橋 裕司 の投稿
福山様レスをありがとうございます。
とりあえず、jpegだけを組み込むつもりで、
エクステンションを色々と変えてやってみましたが、phpinfo()がjpegをenableにしません。jpegは何か他の部品が必要のようです。 googleして、再度ためしてみます。何かお気付きの事がありましたら、御教授ください。

PS
curlもconfigureをする前に、installしておかなければいけないモジュールがありました



三橋 裕司 への返信

Re: curlエクステンションが組み込めません。

- Takayuki Fukuyama の投稿

とりあえずcurlは置いておきまして、GDにおけるjpegの扱いだけであれば

  • --with-gd
  • --with-jpeg-dir

を付けてconfigureしてmakeすれば使えるようになるかと思います。

この場合libjpegを必要としますがインストールされていなければconfigureで以下のようなエラーを吐いて止まるはずですが、そういった傾向はありませんでしょうか。

configure: error: libjpeg.(a|so) not found.

libjpegが無い場合は http://www.ijg.org/files/ このあたりからjpegsrc.v6b.tar.gz というファイルをダウンロードして --enable-shared 付きでconfigureしてmakeおよびmake installする必要があります。が、ディストリビュージョンによってはパッケージでインストールしてしまった方が早いかもしれません。debianだとlibjpeg-devという名前になっています。rpm系だと多分libjpeg-develとかいう名前のような気がします。

php自体をビルドし直す場合はmake distcleanしてから再度configureする事が推奨されているようです。

Takayuki Fukuyama への返信

Re: curlエクステンションが組み込めません。

- 三橋 裕司 の投稿
ずいぶん時間が過ぎましたたが、やっとCURLとGDが組み込めました。
写真が添付出来なかったのは、file.php のパーミッションを実行可にしなかったことが原因でした。CURLはバージョンが古かったためでした。
私はREDHAT9を使っていたので、MOODLEとMYSQL やPHPがバージョンが会わずに苦労しました。これから、LINUXでMOODLEをインストールするのなら、DEBIANにしたほうがよさそーです。YUMコマンドで全て自動でインストールできるそーです。私もDEBIANに変える決心がつきました。
福山様 レスをくださった皆さん、ありがとうございました。

三橋 裕司 への返信

Re: curlエクステンションが組み込めません。

- Mitsuhiro Yoshida の投稿
画像 Developers 画像 Particularly helpful Moodlers 画像 Translators
>これから、LINUXでMOODLEをインストールするのなら、DEBIANにしたほうがよさそーです。YUMコマンドで全て自動でインストールできるそーです。

喜多先生が多言語対応版のRPMを公開されていますので、「簡単インストール + インストール後の日本語文字化け対応不要」のVine Linuxもオススメです。ウインク

三橋 裕司 への返信

Re: curlエクステンションが組み込めません。

- Minoru Akiyama の投稿
秋山@eラーニングサービスです

>> これから、LINUXでMOODLEをインストールするのなら、DEBIANにしたほうがよさそーです。YUMコマンドで全て自動でインストールできるそーです。

別に Debian でなくともyumでMoodleに必要なパッケージは全てインストールできますよ。
CentOS5.1がお勧めです。
moodle1.9beta3までこれでOKです。
Minoru Akiyama への返信

Re: curlエクステンションが組み込めません。

- 三橋 裕司 の投稿
皆さん、それぞれに、肩入れしているOSがあるようですね!!
それぞれに検討して決めたいと思います。
ありがとうございました。
REDHAT9は止めたほうが良いと言う事にはいぞんないようですね。