先日うまくできなかったApche-2.2.6へのバージョンアップですがどうやらFreeBSD6.2との相性らしく世界中に同様に悩んでいる人がいるとことは判った。
症状は./configureは正常終了後、コンパイルすると
$ make
うまくコンパイルできているところは省略..
/bin/sh /usr/local/apr/build-1/libtool --silent --mode=link gcc -g -O2 -DHAVE_CONFIG_H -I/usr/
local/src/httpd-2.2.6/srclib/apr-util/include -I/usr/local/src/httpd-2.2.6/srclib/apr-util/include/p
rivate -I/usr/local/apr/include/apr-1 -I/usr/local/include -version-info 2:11:2 -o libaprutil-
1.la -rpath /usr/local/apr/lib buckets/apr_brigade.lo buckets/apr_buckets.lo buckets/apr_buckets_all
oc.lo buckets/apr_buckets_eos.lo buckets/apr_buckets_file.lo buckets/apr_buckets_flush.lo buckets/ap
r_buckets_heap.lo buckets/apr_buckets_mmap.lo buckets/apr_buckets_pipe.lo buckets/apr_buckets_pool.l
o buckets/apr_buckets_refcount.lo buckets/apr_buckets_simple.lo buckets/apr_buckets_socket.lo crypto
/apr_md4.lo crypto/apr_md5.lo crypto/apr_sha1.lo crypto/getuuid.lo crypto/uuid.lo dbm/apr_dbm.lo dbm
/apr_dbm_berkeleydb.lo dbm/apr_dbm_gdbm.lo dbm/apr_dbm_ndbm.lo dbm/apr_dbm_sdbm.lo dbm/sdbm/sdbm.lo
dbm/sdbm/sdbm_hash.lo dbm/sdbm/sdbm_lock.lo dbm/sdbm/sdbm_pair.lo encoding/apr_base64.lo hooks/apr_h
ooks.lo ldap/apr_ldap_init.lo ldap/apr_ldap_option.lo ldap/apr_ldap_url.lo misc/apr_date.lo misc/apr
_queue.lo misc/apr_reslist.lo misc/apr_rmm.lo misc/apu_version.lo uri/apr_uri.lo xml/apr_xml.lo strm
atch/apr_strmatch.lo xlate/xlate.lo dbd/apr_dbd.lo dbd/apr_dbd_pgsql.lo dbd/apr_dbd_sqlite2.lo dbd/a
pr_dbd_sqlite3.lo -lcrypt -lpthread -lexpat -liconv /usr/local/apr/lib/libapr-1.la -lcrypt -lpth
read
/usr/bin/ld: cannot find -lexpat
*** Error code 1
Stop in /usr/local/src/httpd-2.2.6/srclib/apr-util.
*** Error code 1
Stop in /usr/local/src/httpd-2.2.6/srclib/apr-util.
ということでexpatライブラリが見つからないとか..。それなら調べてみよう!
$ pkg_info | grep expat
expat-2.0.0_1 XML 1.0 parser written in C
p5-XML-Parser-2.34_2 Perl extension interface to James Clark's XML parser, expat
入っているじゃん...。
念のためにexpatをソース(expat-2.0.1.tar.gz)から上書きしても症状は改善せず..。
./configure時に--with-expat=builtinをつけると良いという情報があったがlibiconvも入らないのでWebDAVなどを使っている僕はこの方法もNGでした。
昨日、Web検索していたらうまくインストールできた!Happyなんて書いてあるサイトがあったのでまねてみた
方法は環境変数を以下のように追加してやるというもの
$ setenv LD_LIBRARY_PATH /usr/local/lib:/usr/lib:/lib
ではインストールするべぇ~~
$ ./configure =>無事通過..
$ make =>無事通過(ちょと時間が短いぞ?)
$ make install =>無事通過
やった~~うまくいったぞぅ!それじゃapachectlで再起動してから
$ httpd -v
Server version: Apache/2.2.4
あれ?目の錯覚?念のためもう一度サーバーをrebootして
$ httpd -v
Server version: Apache/2.2.4
結果は大失敗!ということで昨夜はふてくされて寝ちゃいました。
いつになったら終わることやら..涙
コメント (5)
難しくて、何が書いてあるのか全く持って判りませ~ん
投稿者: 万太郎 | 2007年11月21日 18:13
日時: 2007年11月21日 18:13
万ちゃん
コメントありがと!
僕も判ってないんでそんな突っ込みメチャ嬉しいです。
とりあえずひらぽんの技量不足ちゅうことで今後とも突っ込んでちょ!
投稿者: ひらぽん | 2007年11月21日 22:45
日時: 2007年11月21日 22:45
ひらぽん、こんにちは
Apacheのバージョンアップ、ややこしいのでしょうね。
私は、手動でなどという難しいことは絶対にしません。
Fedoraの自動アップデートに任せるのみ。
記述をみるだけでも、頭が痛くなりそうです。
でも、チャレンジ精神に、恐れ入ります。
がんばって。
投稿者: サワ | 2007年11月22日 11:48
日時: 2007年11月22日 11:48
同じ問題にぶつかっていたとき、僕、おっちょこちょいで、make cleanをせずにいて、makeの通らない理由が分からなかったんですが、まさか、ひらぽんさんも同じってわけじゃないですか!?
投稿者: アセダイスケ | 2007年12月 7日 15:54
日時: 2007年12月 7日 15:54
アセダイスケさん
make cleanって必要なのですか?!
今までmakeが通らなかったことなかったので知りませんでした。
再度トライしてみます..現在メインPCが起動せずであせってます..そちらを片付けたら実行してみます。
投稿者: ひらぽん | 2007年12月 7日 21:05
日時: 2007年12月 7日 21:05