2026/07/06

JAGURS on macOS w/ Homebrew

 JAGURS が proj9 に対応したことで macOS 他で所謂パッケージマネージャがある OS 環境であれば,依存ライブラリをコンパイルする必要がなくなりました.

Homebrew で入れるのは以下のパッケージ

  • netcdf
  • netcdf-fortran
  • proj
  • fftw
  • gfortran
Makefile.gfortran をベースとして,設定が必要なのは以下の項目.


% diff -u Makefile.gfortran Makefile 2>/dev/null | grep '^+[A-z]' | sed -e 's/^+//'
FC=gfortran
PROJ_DIR=/usr/local
CC=gcc-16
FFTW3_INCLUDE_DIR=/usr/local/include
NETCDF=/usr/local
PROJ9=ON

※ intelのhomebrewなので、/usr/local ですが、armの場合は /opt/homebrew

(ついでにメモ)
Debian (恐らくUbuntuでも)では、Homebrewと違って、開発パッケージは別になっているので、proj が入っていたとしてもコンパイルは出来ないので、
  • gfortran
  • libproj-dev (version 9)
  • libnetcdff-dev
    • libnetcdf-dev は依存で入る
  • libfftw3-dev
をapt install -y でインストールすればコンパイル出来る。ただし、検証機はMac Pro (Late 2013)ですが。。。

% diff -u Makefile.gfortran Makefile 2>/dev/null | grep '^+[A-z]' | sed -e 's/^+//'
FC=gfortran
PROJ_DIR=/usr
FFTW3_INCLUDE_DIR=/usr/include
PROJ9=ON

2026/01/21

JAGURS on Debian

 Debianであればパッケージでかなりの物が入るのでコンパイルに困ることはなさげですが,検証.

Makefile.gfortran を使う

インストールするパッケージ(sudo apt installで可能)

  • gfortran
  • libnetcdff-dev
  • libfftw3-dev
proj@4 だけは自分でコンパイルが必要.例えば,$HOME/proj4 にインストールしたら,実行時に LD_LIBRALY_PATH=$HOME/proj4/lib が必要

Makefile の修正点は以下の感じ

% rcsdiff Makefile
=============================
RCS file: Makefile,v
retrieving revision 1.1
diff -r1.1 Makefile
2c2
< FC=mpif90
---
> FC=gfortran
7c7
< PROJ4_DIR=$(HOME)/JAGURS/local
---
> PROJ4_DIR=$(HOME)/proj4
43c43
< MPI=ON
---
> MPI=OFF