[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dennou-ruby:002294] Re: RubyNetCDF and opendap/DODS



小高さま

パッケージメンテ,有難うございます.

> debian パッケージ版の RubyNetCDF は DODS 非対応です. 
> 
> できれば正しい作法(?)で対応させたいと思っています. で, 質問なのですが,
> 
> 	正しい作法で DODS 対応 RubyNetCDF バイナリを作るには, まずは
> 	クライアントライブラリー (libdap ?) をリンクした netcdf バイナ
> 	リを作り, それをリンクして RubyNetCDF バイナリを作る
> 
> という理解で正しいでしょうか? 

そういうことになると思います.DODS 対応 NetCDF クライア
ントライブラリーは,libnc-dods.* という名で,
http://opendap.org/download/nc-dods.html
からダウンロードできます.

もし自分でコンパイルしようと思うと,DODS クライアントライブラリー 
libdap++ が依存するライブラリーが山ほどあります.
最近の dods ライブラリーには opendap-config というコマンドがつ
いてくるはずです.ソースからビルドするとおそらくちゃんとしたもの
ができると思いますが,バイナリーを取ってくると,確かそのバイナリー
をビルドした環境ベッタリのになってますので,中身を書き換える必要
があります.

DODS 対応 NetCDF を使う場合の依存ライブラリーは

   % opendap-config --libs-nc

で調べられます.これは

   % opendap-config --libs

の結果に -lnc-dods を加えたものとなってます(see 現在の
RubyNetCDF の extconf.rb).ちなみに,私のところでは
こうなります:

% opendap-config --libs-nc
-L/usr/local/lib -lnc-dods -ldap++ -lnc-dods -ldap++ -L/usr/local/lib -lxml2 -L/usr/local/lib -lz -lpthread -lm -L/usr/local/lib -lcurl -static -lssl -lcrypto -ldl -lz  -lpthread -lz

同じのが何個か繰り返されてますが,それでも沢山ありますね.