FreeFem++ 3.50 のコンパイル

Post date: 2017/01/05 7:14:07

  1. download/getall した際に blas.tgz で MD5 エラーが起きる -> libatlas を利用 (2017-01-04現在)
  2. download/arpack でのエラー (CentOS + intel compiler : MKL が正しく呼ばれていない)
      1. case '-L/opt/intel/compilers_and_libraries_2017.0.098/linux/mkl/lib/intel64 -lmkl_rt -lmkl_sequential -lmkl_core -liomp5 -lpthread' in *vecLib*|*Accelerate*|*mkl*) gfortran -c -g ;-DNDEBUG -O3 -mmmx -msse -msse2 -fPIC veclib_cdotc.f -o ARPACK/SRC/veclib_cdotc.o ;; esac;;
      2. gfortran: エラー: veclib_cdotc.f: そのようなファイルやディレクトリはありません
      3. gfortran: 致命的エラー: 入力ファイルがありません コンパイルを停止しました。
    1. 解決方法:
      • MKLのリンクがちゃんと出来ているか確認する
      • veclib_cdotc.f をダウロードする
        • $ wget http://www.freefem.org/ff++/ff++/download/arpack/veclib_cdotc.f
      • [ 無保証です ] veclib_cdotc.f を作る
        1. $ cd download/arpack/
        2. $ cp veclib_zdotc.f veclib_cdotc.f
        3. $ vi veclib_cdotc.f
          1. double complex function zzdotc(...) ->; complex function ccdotc(...) ...
          2. double complex zx(... -> complex zx(... ...
          3. ztemp = ztemp + dconjg(zx(ix)... -> ztemp = ztemp + conjg(zx(ix)... ...
          4. ztemp = ztemp + dconjg(zx(i)... -> ztemp = ztemp + conjg(zx(i)...
    2. freefem++-3.50 へ戻り,再度 make 実行
  3. download/mumps-seq でのエラー
    • mumps-seq (MUMPS の sequential 版 library) コンパイル時に、ソース内で mpif.h 等が呼ばれていることを考慮していないためにエラー発生
    • download/mumps-seq/Makefile-mumps-5.0.2 のtypo
        • INCSEQ = -I$(DOWNLOADFF)/mumps-seq/MUMPS_5.0.1/libseq LIBSEQ = -L$(DOWNLOADFF)//mumps-seq/MUMPS_5.0.1/libseq -lmpiseq$(PLAT)
        • -> INCSEQ = -I$(DOWNLOADFF)/mumps-seq/MUMPS_5.0.2/libseq LIBSEQ = -L$(DOWNLOADFF)//mumps-seq/MUMPS_5.0.2/libseq -lmpiseq$(PLAT)
    • [2017-01-10] MKLのリンク,mumps-seq での TYPO についてはA.Suzukiさんより情報をいただきました.