dポイントプレゼントキャンペーン実施中!

既存Apache2.2.15から2.2.22へマイナーバージョンアップをやってみたのですが、
途中でエラーが表示されてしまいました。
すみません。エラーの理由が分かれば教えていただけないでしょうか。
OSはCentOS6です。

#cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bk(バックアップ)
#/usr/bin/apachectl stop
#tar zxvf ./httpd-2.2.22.tar.gz (ダウンロードしたものを展開)
#cd httpd-2.2.22
#./configure --prefix=/etc/httpd

#./configureまで来て、以下のエラーが表示されました。
又、makeをしようとしても当然configureの設定が終了していないので
エラーになっていると思われます。

checking for chosen layout... Apache
checking for working mkdir -p... yes
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu

Configuring Apache Portable Runtime library ...

checking for APR... reconfig
configuring package in srclib/apr now
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
Configuring APR library
Platform: i686-pc-linux-gnu
checking for working mkdir -p... yes
APR Version: 1.4.5
checking for chosen layout... apr
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/httpd-2.2.22/srclib/apr':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.
configure failed for srclib/apr
[root@web01 httpd-2.2.22]# make
make: *** ターゲットが指定されておらず, makefile も見つかりません. 中止.

あともう1点教えていただきたいです。
アップグレードが途中で失敗している状態なのですが、configureまでであれば、既存のApacheには
影響していないでしょうか?

A 回答 (3件)

> すみません。

エラーの理由が分かれば教えていただけないでしょうか。

原因はこれです。

# configure: error: no acceptable C compiler found in $PATH

開発ツールとかインストールされています?
(デフォルトではインストールされません)

最低でも、gcc、binutils、makeくらいはパッケージでイントールされている必要があります。

> アップグレードが途中で失敗している状態なのですが、configureまでであれば、既存のApacheには
> 影響していないでしょうか?

影響しません。
ただ、そういう心配をしなくても良いように、基本的にはmake install以外の作業は一般ユーザで行うべきです。

> #./configure --prefix=/etc/httpd

パッケージを上書く可能性がある場所にインストールすることはお勧めしません。
/opt/httpdとかがお勧めです。以下のconfigureオプションを指定した場合、大部分は /opt/httpd、設定ファイルは /etc/opt/httpd、ログなどは /var/opt/httpdにインストールされます。

$ ./configure --prefix=/opt/httpd --enable-layout=opt ...

あと、標準インストールされているものではなく、ソースコードからインストールしたものを起動させるための細工が必要です。

# cp /etc/rc.d/init.d/httpd /etc/rc.d/init.d/httpd-opt

/etc/rc.d/init.d/httpd-optを編集(パスなどを修正)

# chkconfig httpd off
# chkconfig --add httpd-opt
# chkconfig httpd-opt on

> 既存Apache2.2.15から2.2.22へマイナーバージョンアップをやってみたのですが、

パッケージ版は configure オプションを含め細部にわたって環境に適合するように調整されています。ソースコードから単純にインストールしても、以前は使えた機能が使えなくなったなど、デグレになりかねません。
    • good
    • 0
この回答へのお礼

ご丁寧に解説を付けていただきありがとうございました。
確認させていただきます。

お礼日時:2012/02/22 16:48

>すみません。

エラーの理由が分かれば教えていただけないでしょうか。

#1の方も書かれていますがログに書いてありますよ。

>アップグレードが途中で失敗している状態なのですが、configureまでであれば、既存のApacheには
>影響していないでしょうか?

コンパイルさえできてないので影響しません。
あと configure のオプションはちゃんと調べておいた方がいいですよ。
たぶんその指定だとアップグレードではなく既存のと同居になると思う。
    • good
    • 0
この回答へのお礼

ありがとうございます。

お礼日時:2012/02/22 16:49

なんで質問者は自分でコピーしたconfigureの結果を読まない?


そこに答えが書いてあるぞ。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!