加藤(大阪)です。 Sat, 21 Apr 2007 23:47:00 +0900 付 VYG07066@xxxxxxxxxxxさんのメールより: > そこで、rpmを検索してFCやredhatのrpmでチャレンジしてみたのですが、結構 > 多くの依存関係が有って手をつけられませんでした。一番古いgdlをrpm -ihv .. バイナリ rpm は、ビルドした環境(に含まれるライブラリ(のバージョン))に依 存しますので、他のディストリビュージョンの rpm パッケージをインストール する場合は、src.rpm からリビルドする方が確実です。 ソース tarball からインストールする場合 ./configure - make - make install の手続きをとる場合と同様、環境に合わせて、ライブラリ(バージョン) 等の差 異を(ある程度)解決してくれますので。 > rpm -ihvした時のlogです。新しいものだと、これ以上に出ます。 > > libMagick++.so.6 は gdl-0.8.11-2.fc4.i386 に必要とされています > libfftw3.so.3 は gdl-0.8.11-2.fc4.i386 に必要とされています > libfftw3f.so.3 は gdl-0.8.11-2.fc4.i386 に必要とされています > libhdf5.so.0 は gdl-0.8.11-2.fc4.i386 に必要とされています > libplplotcxxd.so.9 は gdl-0.8.11-2.fc4.i386 に必要とされています > ..... 例えば、gdl-0.9-0.pre4.1.fc7.src.rpm を、自分の環境で、 $ rpmbuild --rebuild gdl-0.9-0.pre4.1.fc7.src.rpm すると、 エラー: ビルド依存性の失敗: gsl-devel は gdl-0.9-0.pre4.1.i386 に必要とされています plplot-devel は gdl-0.9-0.pre4.1.i386 に必要とされています ..... fftw-devel は gdl-0.9-0.pre4.1.i386 に必要とされています hdf-devel は gdl-0.9-0.pre4.1.i386 に必要とされています ..... というようなエラーになります。 各エラーメッセージの最初の名前が不足しているパッケージ名ですから、 次は root になって、 # apt-get install gsl-devel plplot-devel ... と、不足パッケージをインストールします。 この時、vine に無いパッケージは勿論インストール出来ずにエラーになるの で、その分は fedra サイト等から src.rpm を落としてきて、個々に、 $ rpmbuild --rebuild "src.rpm名" します。 その段階でも新たな不足パッケージが出るかもしれません。その場合は又、 # apt-get install ... からの作業を行います。 根気のいる作業ですが、他に近道は無いように思います。 > そこで本家サイトでtar玉を持ってきて、checkinstallにてrpmを作ろうと進 > めてみましたが、やはり必要なライブラリ等が不足していて、難航しています。 src.rpm からの --rebuild は、tarball から./configure - make - make install(又は checkinstall) するのとほぼ同じ事を、システムとの整合な どを考慮して行っていますので、特に理由が無い限り src.rpm が有る場合は、 それをリビルドする方が合理的です。 以下は gdl-0.9-0.pre4.1.fc7.src.rpm のリビルドを制御する spec ファイル の、build 及び install セクションの抜き書きです。 %build %configure --disable-dependency-tracking --disable-static \ --with-fftw \ INCLUDES="-I/usr/include/netcdf-3 \ -I/usr/include/hdf" \ LIBS="-L%{_libdir}/netcdf-3 -L% \ {_libdir}/hdf" make %{?_smp_mflags} %install rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT 御覧の通り、configure、make、make install をオプション付きで実行している 事がわかると思います。(可能なら、リビルド作業で rpm/SPEC 以下に展開され る spec ファイルに手を入れれば、インストールはより容易になることも有りま す) > まとめますと以下の通りです。 > > ・gdlをvineのパッケージだけでインストール可能か gdl 自体が無いようなので、不可能かと思います。 > ・無理な場合はrpmをredhatから取って来て依存性を潰していく、ソースから > エラーを潰していくのどちらが良いか どちらかといえば "(バイナリ)rpm から"より、"ソースから" ですが、上記理由 から、src.rpm からのリビルドで依存性を潰していくのがより合理的だと思いま す。 > ・javac,f95は何処で手に入るか configure log の、enable_f95: no / enable_java: no から判断されたのだと 思いますが、log を拝見した所、configure スクリプトはエラーを出さずに実行 を完了し、 config.status: creating Makefile と、Makefile も作成されているようなので、これらは多分必要ないと思いま す。 (configure スクリプトの目的は、make コマンドが参照する Makefile を、環境に合わせて作成する事に有り、その目的は達成されているのですから) > という点で困っております。どなたかアドバイス頂けないでしょうか。 どちらにしても、vine に無い依存パッケージが多いようで、インストールは大 変でしょうが、必要に迫られての事のようですので頑張ってください。 最終的にインストール可能かどうかは断定できませんが、リビルド中に vine の 他のパッケージとの衝突がなければ、何とかなるのでは無いかと思います。 -- 加藤 雅 <mkato@xxxxxxxxxxxxx> http://add10.hp.infoseek.co.jp/rox/