国立研究開発法人防災科学技術研究所 水・土砂防災研究部門
国立研究開発法人防災科学技術研究所 水・土砂防災研究部門
トップ 一覧 検索 ヘルプ RSS ログイン

NetCDF-Perlの技術メモ

 NetCDF-perlのインストール(/home/xxx/localへのインストール)

管理者権限をもたない人がnetcdf-perlを使いたい場合には、

以下の手順で
/home/xxxx/local/netcdf-perl にモジュールを

インストールすることができる。


【インストール手順】

1. netcdf-3.6.2をダウンロードする

2. setenv CFLAGS '-O3 -fPIC'

3. setenv CXX 'g++ -O3 -fPIC'

【参照】netcdfインストール(ver3.6.2インストール時の問題)

4. mkdir /home/xxxx/local/netcdf-3.6.2

5. ./configure --prefix= /home/xxxx/local/netcdf-3.6.2

(もしfortran関係でmakeの時にエラーがでるならば、--disable-f90を追記){{br}}

6. make

7. make install

8. /home/xxxx/local/netcdf-3.6.2/の下に、libやincludeができたか確認

9. netcdf-perl-1.2.4.tar をダウンロードする

10. srcの下にて、CUSTOMISEを開き、CPP_NETCDFに以下のように書き換える

-I/home/xxxx/local/netcdf-3.6.2/include 

11. srcの下にて、CUSTOMISEを開き、LD_NETCDFに以下のように書き換える

-L/home/xxxx/local/netcdf-3.6.2/lib -lnetcdf

12. ./configure

13. make

14. 通常であれば、make install とするが、/usr/lib64/perl/-----のような
rootの書き込み権限が必要な場所に書き込もうとする

15. そこで、make install はせずに、/home/xxxx/local/netcdf-perlの下に

インストールさせることを考える

まずは、作成された

/????/netcdf-perl-1.2.4/src/perl/NetCDF.pm

を /home/xxxx/local/netcdf-perl/の下にコピーする 

16. mkdir /home/xxxx/local/netcdf-perl/auto/NetCDF

17. 作成された以下の2つのファイルを上記のディレクトリにコピーする

/????/netcdf-perl-1.2.4/src/perl/blib/arch/auto/NetCDF.so
/????/netcdf-perl-1.2.4/src/perl/blib/arch/auto/NetCDF.bs

18. /home/xxxx/local/netcdf-perl/auto/NetCDFにautosplit.ix
というファイルを作成し、emacsなどで、そのファイルに

1;

という文字を書き込み保存する。




【NetCDFモジュールの使い方】

test.plなどの適当なファイルの先頭に

#! /usr/bin/perl
use lib "/home/xxxx/local/netcdf-perl/";

という一行を加えて、上でインストールしたモジュールのパスを記述する

もしくは

BEGIN{
   push(@INC, "/home/xxxx/local/netcdf-perl/");
}

でもよい。

そのあとで、

use NetCDF;

と書き込めば、そのperlスクリプト内でnetcdf-perlの関数が利用可能となる


 NetCDF-perl用のNetCDF ver 2のマニュアル

http://www.unidata.ucar.edu/software/netcdf/guide_toc.html

 関数一覧



 例題一覧

  • NetCDFファイルをPerlで開く(書き込み不可で開く)
  • NetCDFファイルをPerlで開く(書き込み可で開く)
  • (NetcdfPerl)変数を調べる
  • (NetcdfPerl)次元を調べる
  • (NetcdfPerl)変数を読み取る
  • (NetcdfPerl)変数の属性を調べる
  • (NetcdfPerl)グローバル変数の属性を調べる
  • (NetcdfPerl)エラーハンドリング
  • (NetcdfPerl)グローバル変数の属性(テキスト)を調べる

NetCDF::opts(0) : エラー無視:続行
NetCDF::opts(1) : エラー無視:中断
NetCDF::opts(-1) : エラーメッセージ表示:中断 (デフォルト)


  • (NetcdfPerl)バイナリファイルへ
  • (NetcdfPerl)GMTでお絵かき

 実用例

  • レーダの仰角を表示する