ここで参照してブログを伝え、LinuxのNetCDFファイルサーバにインストールするための一般的な方法について説明します。主な目的は、追加の詳細な説明が参照できるデータ圧縮機能、実現することにある公式のガイドラインを。
ソースコードをコンパイルするために必要な取得
まず、データ圧縮だけで4つのパッケージを実装するために必要な必要なパッケージをインストールします。
もう一つ:非本質的な機器:(DAPリモートアクセスクライアントをサポートするための)カール7.18.0以降
インストール
一般的なサーバが同時に多くのコンパイラを共存させることができますように、ここで使用する最初のインテルコンパイラを指定:
コンパイラことを指定します
Linuxの場合:
export CC=icc
export CXX=icpc
export CFLAGS='-O3 -xHost -ip -no-prec-div -static-intel'
export CXXFLAGS='-O3 -xHost -ip -no-prec-div -static-intel'
export F77=ifort
export FC=ifort
export F90=ifort
export FFLAGS='-O3 -xHost -ip -no-prec-div -static-intel'
export CPP='icc -E'
export CXXCPP='icpc -E'
Mac用:
export CC=icc
export CXX=icpc
export CFLAGS='-O3 -xHost -ip -no-prec-div'
export CXXFLAGS='-O3 -xHost -ip -no-prec-div'
export F77=ifort
export FFLAGS='-O3 -xHost -ip -no-prec-div -mdynamic-no-pic'
zlibのインストール
/ usr / local /フォルダも必要とされる権限がSUDOにここで管理のその後の容易さのために、これらのパッケージの選択は、コンパイルとインストールされています
ZDIR=/usr/local/zlib #安装文件夹
mkdir ${ZDIR}
./configure --prefix=${ZDIR}
make check
make install
HDF5のインストール
H5DIR=/usr/local/hdf5
mkdir ${H5DIR}
./configure --with-zlib=${ZDIR} --prefix=${H5DIR} -enable-fortran -enable-cxx
make check
make install
インストールHDF5の時に、-with-zlibを= $ {ZDIR}が存在しなければならないことに留意すべきで 、 それ以外の場合は、見つからないライブラリファイルに関連するエラーになります。個人のPCにインストールされているとき、あなたはC ++コメントのやり方は、使用済みのIS90の仕様、このエラーが発生した場合にはできません求められることがあり、現在のソリューションは、関連する文書を見つけることですと、C ++のコメントの仕方は//モードC / /コメントアウト、現在知られているインストールプロセス二つの文書があります修正するには、2つの必要性でした。
詳細は、参照することができHDF5設定オプションを
HDF4インストール
在实际的安装过程中,由于程序需要同时使用hdf4和hdf5的库,因此这里给出hdf4的安装过程。
在安装hdf4之前,需要安装依赖库,jpeg,szip
JPEGのインストール
上記の手順に従って、コンパイラの開発した後、最初のJPEGサイトのソースコードパッケージをダウンロードするには、解凍した実行:
JPEGDIR=/usr/local/jpeg
mkdir ${JPEGDIR}
./configure --prefix=${JPEGDIR}
make check
make install
szipインストール
SDIR = /usr/local/szip
mkdir ${SDIR}
./configure --prefix=${SDIR}
make check
make install
コンパイルし、HDF4をインストール
このステップでは、時間は、パラメータは./configureに注意を払う必要性をいくつかの問題が発生する場合があります。最初に使用する前に、勧告の実施には:
./configure --help
あなたがダウンロードして解凍HDF4インストールパッケージ、最初のサーバーのyaccとフレックスが必要なインストールをコンパイルするかどうかを判断した後でない場合は、インストールするには、次のコードを実行します。
# ubuntu
sudo apt-get install byacc
sudo apt-get install flex
# centos
sudo yum instal byacc
sudo yum install flex
会うの実行の基本的な条件をコンパイルした後:
mkdir /usr/local/hdf4
./configure --with-szip=/usr/local/szip --with-jpeg=/usr/local/jpeg --with-zlib=/usr/local/zlib --disable-netcdf --enable-fortran --prefix=/usr/local/hdf4
make check #在对source code进行test的时候发现在hdfnctest这个测试中花费大量的时间,但是在中断make check直接make install居然成功了
make install
詳細なパラメータは、NetCDFファイルをご参照ください公式の導入
インストールnetcdfc
NCDIR=/usr/local/netcdf4c
H5DIR=/usr/local/hdf5
H4DIR=/usr/local/hdf4
mkdir ${NCDIR}
CPPFLAGS=-I${H5DIR}/include LDFLAGS=-L${H5DIR}/lib
CPPFLAGS=-I${H4DIR}/include LDFLAGS=-L${H4DIR}/lib
export LD_LIBRARY_PATH=${H5DIR}/lib:${LD_LIBRARY_PATH}
./configure --prefix=${NCDIR} --enable-netcdf-4 --enable-largefile --disable-dap #这里在加入 --enable-hdf4参数之后始终会报错,错误为找不到hdf4 library,但是可以看到我事先已经将hdf4 lib加入到了环境变量中 这里存疑 但是不需要netcdf支持hdf4 因此可以忽略这点
make check
make install
インストールnetcdff
NFDIR=/usr/local/netcdf4f
NCDIR=/usr/local/netcdf4c
mkdir ${NFDIR}
export CPPFLAGS="-I/usr/local/szip/include -I/usr/local/zlib/include -I/usr/local/hdf5/include -I/usr/local/netcdf4c/include"
export LDFLAGS="-L/usr/local/szip/lib -L/usr/local/zlib/lib -L/usr/local/hdf5/lib -L/usr/local/netcdf4c/lib"
export LD_LIBRARY_PATH=${NCDIR}/lib:${LD_LIBRARY_PATH}
CPPFLAGS=-I${NCDIR}/include LDFLAGS=-L${NCDIR}/lib ./configure --prefix=${NFDIR} --disable-fortran-type-check
make check
make install
インストールの結果
nc-config -all
注意事項
上記の時間を実行するために必要とsudo権限が、使用のsudoをする場合、コードが実行されるので、多少の誤差が生じ、環境変数をリセットします。インストールはsudoの-Eを使用することが推奨された場合
#-E选项在man page中的解释是
-E
The -E (preserve environment) option indicates to the security policy that the user wishes to preserve their existing environment variables. The security policy may return an error if the -E option is specified and the user does not have permission to preserve the environment.
簡単に言えば、-Eオプションを追加した後、ユーザーは変数は、現在のユーザーが既に存在する実行するためにsudoの環境にとどまることができ、ユーザーが指定した環境変数のための権限を持っていない場合、それはエラーになり、加えて、リセットsudoのではないでしょう。
しかし、ICPCコマンドがエラーを見つからない場合はmake installを問題Intelのコンパイラの環境変数による発見の実際のインストール、私は最善の方法は、設定したアクセス権フォルダプリコンパイルされたオブジェクトファイルであり、その後、直接実行と思いますので、に上記のスクリプトは、sudo権限を使用しないようにしてみてください。また、インストールプロセスでは、私はここに、パッケージをコンパイルし、起因する問題のバージョンにいくつかの時間でコンパイルとリンクされ、いくつかのライブラリがコンパイル適切にすることができないことが判明私のバージョンは以下のとおりです。
- パフ2.1.1.tar.gz
- ZLIB-1.2.11.tar.gz
- hdf5-1.10.4.tar.gz
- JPEG-9C-droppatch.tar.gz
- パフ2.1.1.tar.gz
- HDF-4.2.14.tar.gz
- netCDFの-4.6.1.tar
- netCDFの-FORTRAN-4.4.4.tar.gz