ここ数日、懲りずにやっているサーバの設定を今日もやっていたの。昨日からの続きで、今日もXML::LibXMLのインストールに挑戦。先日から何度も、何度もインストールを試みているんだけど、どうしても出来ないの。Googleへの検索の旅に出かけること数十回。これだけ調べて出来ないっていうのは、きっと誰もわからないんだろうと思いたくもなってきちゃうよね。っていうか、1番わかっていないのはムースだろうけど。
先日、どこかの書き込みにもムースと似たような問題で困っているというのを見かけたの。そこにはDEBUGモードでインストールを試みているやり方が載っていたので、ムースもそれに習ってDEBUGモードでのインストールをやってみたの。
$ perl Makefile.PL DEBUG=1 perl -V:version enable native perl UTF8 running xml2-config... xml2-config --version xml2-config --libs xml2-config --cflags ok looking for -lxml2... perl Makefile.PL 'INC=-I/usr/include/libxml2' 'DEFINE= -DHAVE_UTF8' 'LIBS=-L/usr/lib -lxml2 -lz -lm' INC = -I/usr/include/libxml2 DEFINE = -DHAVE_UTF8 LIBS = -L/usr/lib -lxml2 -lz -lm Writing Makefile for Conftest make test 'OTHERLDFLAGS=-lxml2' cp Conftest.pm blib/lib/Conftest.pm /usr/bin/perl -I/usr/lib/perl5/5.6.1/i386-linux -I/usr/lib/perl5/5.6.1 /usr/lib/perl5/5.6.1/ExtUtils/xsubpp -typemap /usr/lib/perl5/5.6.1/ExtUtils/typemap Conftest.xs > Conftest.xsc && mv Conftest.xsc Conftest.c gcc -c -I/usr/include/libxml2 -fno-strict-aliasing -O2 -m486 -fno-strength-reduce -DVERSION=\"1\" -DXS_VERSION=\"1\" -fPIC -I/usr/lib/perl5/5.6.1/i386-linux/CORE -DHAVE_UTF8 Conftest.c Running Mkbootstrap for Conftest () chmod 644 Conftest.bs rm -f blib/arch/auto/Conftest/Conftest.so LD_RUN_PATH="/usr/lib" gcc -shared -L/usr/local/lib Conftest.o -lxml2 -o blib/arch/auto/Conftest/Conftest.so -L/usr/lib -lxml2 -lz -lm /usr/bin/ld: cannot find -lz collect2: ld returned 1 exit status make: *** [blib/arch/auto/Conftest/Conftest.so] エラー1 system call to 'make test 'OTHERLDFLAGS=-xml2'' failed at Makefile.PL line 195. no libxml2 not found Try setting LIBS and INC values on the command line Or get libxml2 from http://www.libxml.org/ If you install via RPMs, make sure you also install the -devel RPMs, as this is where the headers (.h files) are.
こんな感じで昨日のエラーとは打って変わって、ダラダラと長いエラーが吐き出されたの。で、これを注意深く読んでいたら、どうやらエラーの原因はlibxml2を探し出せないってことではなく、/usr/bin/ldというところで-lzというものを見つけられないのが原因のようだったの。そこでまたも調べました。するとzlib-develをインストールすればいいみたいなことが書いてあるサイトを発見。インストールしようとしていたものは違えど、エラーの箇所は同じ所なので、これだろうって思ったの。でもって、すでにインストールされているかどうかrpm -qa | grep zlibで調べてみると、zlibは入っているもののzlib-develは入っていなかったの。だからzlib-develをインストールしてみました。
zlib-develをインストールしたあと、もう1度$ perl Makefile.PLをしてみると、今度はエラーがまったく違っていたの。XML::LibXMLのインストールに必要なモジュールがインストールされていないとのこと。でもって、最初はXML::LibXML::Common。次にXML::NamespaceSupport、最後にXML::SAXとエラーを出すたびに要求されたモジュールをインストールし、もう1度XML::LibXMLのインストールを試みたの。でもって、インストールをしてみると、ついに成功したの。やっと出来たって思ったし、結構うれしかったなぁ。
でもここで、突如、本来の目的を思い出したの。ムースはXML::AtomをインストールしたかったためにXML::LibXMLのインストールを試みていたの。ただXML::LibXMLをインストールに当たって、libxml2のバージョンの問題やら何やらでうまくいかずに、苦労していたんだ。それがlibxml2のバージョンが古いままでもインストールできることがわかり、今日ようやくインストールに成功したの。しかし本来の目的であるXML::Atomのインストールをしようと思ったときに、またも大きな壁にぶつかりました。
XML::AtomをインストールしようとするとXML::LibXMLのバージョン1.54以上が要求されてしまうの。しかし、ムースのインストールしたXML::LibXMLのバージョンは1.53。じゃぁ、1.54を入れ直せばいいやと思ったものの、1.54にするにはlibxml2のバージョンを上げなければいけない。libxml2のバージョンを上げるということは、glibcのバージョンを上げなければいけないって感じで、連鎖的にいろいろなモジュールのバージョンを上げなければいけなかったんだ。そこでムースは考えました。このままXML::Atomのインストールをあきらめてしまうか、どうにかインストールするか。
ムースが画面を見ながら悩んでいるとき、ムー太郎がひとこと、「Linuxのバージョンアップしちゃえば」と。そう、今使っているVine Linuxのバージョンを2.6r4から3.0に上げると、今までの問題はすべて解決するの。そこでapt-getを使ってディストリビューションのアップグレードを始めたんだ。
アップグレードに必要なモジュールをダウンロードするのに時間がかかるので、しばらく待つことに。人によっては何時間もかかるようだけど、ムースの場合は約30分でダウンロード終了。そのままアップデート作業に入っていったんだけど、始まってすぐに「依存性の欠如」とエラーが出て失敗。rpmlibが必要って出ているんだけど、これをどう入れていいかわからず、検索してもこれっていうを探しきれなかったの。折角、何日もかかってXML::LibXMLを入れたのに…。
実はこのときには精神的に疲れていたの。だって折角インストールに成功したのに、目的を達することが出来なかったんだもん。疲れ切っていたので、問題を解決する気力もなかったし。だから2ヶ月かかって設定したサーバをクリアインストールすることにしちゃった。もちろん、いくつかのファイルはバックアップを取りましたよ。
でもって、クリアインストールをしたものの、今までどうやって設定してきたのかよく覚えていないから、再インストール後はネットも使えなければ、サウンドカードも認識せず、二進も三進も行かない状態。今日はこれ以上インストールをやる気になれなかったから、再インストールはあきらめました。何だかなぁって感じだけど。ネットが使えない原因は、ルータのとの兼ね合いもあるのだろうと思うので、そのうちゆっくりやるつもり。
話は変わって、クリスマスイブの夜に雪が降って、ホワイトクリスマスを迎えるなんてことは、東京にいると体験するのはとっても難しいと思うの。平成元年のクリスマスイブは、冷たい雨がザーザーと降っていたし、山下達郎の歌ではないけれど、♪雨は夜更け過ぎに雪へと変わるだろう…ってことになりそうだったよね。実際は雨のままだったけど。
でもここ北の国ではホワイトクリスマスを迎えることができる可能性がある。といいつつ、過去3年はホワイトクリスマスにはならなかったけどね。イブに粉雪が舞ったことくらいはあったかな。だけど今年は本当にホワイトクリスマスになる可能性があるの。天気予報を見ていると、今晩から明日、明後日まで雪の予報。今はまだ何も降っていないけど、隣街では早くも粉雪が舞っているよう。明日朝起きたら、1面雪景色になっているなんていいよね。ムースにとって人生初のホワイトクリスマスは訪れるのかな。 |