ISPACK: 科学計算のための FORTRAN77 ライブラリ から ispack-2.1.3.tar.gz を入手する。
MacPorts で gcc6 (gfortran), openmpi-gcc6 (openmpi-gcc6-fortran), clang-6.0 をインストールする。
sudo port install gcc6 port select --list gcc sudo port select --set gcc mp-gcc6 sudo port install openmpi-gcc6 port select --list mpi sudo port select --set mpi openmpi-gcc6-fortran sudo port install clang-6.0 port select --list clang sudo port select --set clang mp-clang-6.0 |
(gcc5 と gcc6 のどちらが適切かは分からない。両方試してみるつもり。 clang のバージョンをどうするかについても分からないのだが、 当面これで行ってみる。)
では、ISPACK に取り掛かる。
tar xzf ispack-2.1.3.tar.gz cd ispack-2.1.3 |
Mkinclude を編集する。 基本は -Wa,-q というオプションを3箇所に加えるだけ (アセンブラー as に -q というオプションを渡す、 という意味の指定。 as は -q を指定されると clang を呼び出す)。
$ diff Mkinclude.org Mkinclude 10c10 < FFLAGS = -O3 -march=native -fopenmp --- > FFLAGS = -O3 -march=native -fopenmp -Wa,-q 15c15 < MPIFFLAGS = -O3 -march=native -fopenmp --- > MPIFFLAGS = -O3 -march=native -fopenmp -Wa,-q 20c20 < CFLAGS = -O3 -march=native --- > CFLAGS = -O3 -march=native -Wa,-q |
こうしておいて
make |
sudo cp -p libispack2.a /usr/local/lib |
桂田 祐史