LoginSignup
0
1

More than 5 years have passed since last update.

NetCDF on CentOS6.8 > undefined reference to `nf_enddef_' の対処 > yumのパッケージでも問題なかった > ライブラリオプションに-lnetcdffを足す

Last updated at Posted at 2016-10-26
動作環境
Xeon E5-2620 v4 (8コア) x 2
32GB RAM
CentOS 6.8 (64bit)
openmpi-1.8.x86_64 とその-devel
mpich.x86_64 3.1-5.el6とその-devel
gcc version 4.4.7 (とgfortran)
# yum list installed | grep netcdf
netcdf.x86_64           4.1.1-3.el6.5   @epel                                   
netcdf-devel.x86_64     4.1.1-3.el6.5   @epel                                   
netcdf4-python.x86_64   1.0.2-1.el6     @epel         

関連 http://qiita.com/7of9/items/374323a390482a6969cf

ことの発端

あるFortran90のソフトをコンパイルしようとしてエラーが出た。
http://qiita.com/7of9/items/193f19a750e3384c8d2e

undefined reference to `nf_enddef_'

libnetcdf.aなどが認識できていない

結論

ライブラリオプションに-lnetcdffを足してエラーはなくなった。

以上。

上記を得るまでに試した/試そうとしたこと (以下、無駄話)

  • yumでのパッケージをあきらめてNetCDFをソースからインストールしよう
  • NetCDFをインストールしたらFortranパッケージがない
  • NetCDF Fortranパッケージをインストールしよう
  • NetCDF FortranパッケージインストールにはHDF5ライブラリの関連をごによごにょ
  • HDF5をソースからインストールする、、、、か?
  • 面倒なので、yumに戻した。

できごころで-lnetcdffを足して該当のFotranパッケージをビルドした。
通った。

心の叫び

参考 http://qiita.com/mpyw/items/a4495d476ea9ffe54e16

ア゛ア゛ア゛ア゛ア゛ア゛ア゛ア゛ア゛ア゛も゛っ゛と゛早゛く゛知゛り゛た゛か゛っ゛た゛ア゛ア゛ア゛ア゛ア゛ア゛ア゛ア゛ア゛
(generated by 阿鼻叫喚ジェネレーター)

着゛目゛点゛違゛う゛Y゛o゛。゛2゛時゛間゛前゛の゛自゛分゛。゛

ひっかかっている点

1つだけひっかかっている点。

libnetcdf.aというファイルが上記の作業の結果/usr/lib64以下に見つかるようになっている。

yumしなおした結果なのか、ソースからのインストールで生成されたものかは判別できていない。

yumでnetcdf-static.x86_64もインストールしたことと関係あるかもしれない。

試しにyum removeにてnetcdf-static.x86_64を削除した。libnetcdf.aというファイルはなくなった。
該当のソフトをコンパイルしてみた。エラーなくコンパイルできた。

0
1
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1