The following is the parms.osx_gfortran_accellerate mentioned in installation under MacOS
This file is written for the ARM architecture on M1. The options for Intel Macs are commented out using #
. Delete the currently active option and uncomment the Intel option.
Paths for the libraries might need to be adapted depending on the installation on the system. The command brew info <package>
might be useful if Homebrew was used for the installation.
The parameter -msse2
of the compiler under FCFLAGS_PROF
specifies the architecture of the Intel chips used by apple before they introduced their own chips. Thus it will not work on the new M1 chips of Apple. If this is a problem, remove it or find the correct replacement.
ARCH="osx_gfortran_accellerate" TPARALLEL="T" SPECIAL="none" COMPILER_SCALAR="gfortran " COMPILER_PARALLEL="${MPIDIR}/bin/mpifort " BLASDIR="" LAPACKDIR="" FFTDIR="/opt/homebrew/" #FFTDIR="/usr/local/" FFT_HEADER="${FFTDIR}/include/fftw3.f03" #FFT_HEADER="/usr/local/include/fftw3.f03" MPIDIR="/opt/homebrew/" #MPIDIR="/usr/local/" FCFLAGS_NONE="-c " FCFLAGS_OPT="-c -O3 -funroll-loops -fomit-frame-pointer -march=native -fexternal-blas " FCFLAGS_PROF="-c -pg -O3 -funroll-loops" #FCFLAGS_PROF="-c -pg -O3 -funroll-loops -msse2" FCFLAGS_DBG="-c -g -O3 -funroll-loops -fomit-frame-pointer -march=native -std=f2008 -pedantic -fbacktrace -fdump-core -fimplicit-none -fcheck=bounds,do,mem,pointer,recursion -ffpe-trap=invalid,zero,overflow -ffpe-summary=invalid,zero,overflow -fexternal-blas -Wall -Wextra -Wline-truncation -Wuninitialized -Wno-maybe-uninitialized" LDFLAGS_SCALAR="-I${OBJDIR} -L${OBJDIR} -framework Accelerate " LDFLAGS_PARALLEL="-I${OBJDIR} -L${OBJDIR} -framework Accelerate " LIBS_SCALAR="-L${FFTDIR}lib -lfftw3" #LIBS_SCALAR="-L/usr/local/lib -lfftw3" LIBS_PARALLEL="_L${FFTDIR}lib -lfftw3" #LIBS_PARALLEL="-L/usr/local/lib -lfftw3" CPPFLAGS="-DCPPVAR_FFT_FFTW3" FEXT="f90"
Homebrew
I use homebrew to install Linux software in the MacOS environment. Homebrew installs the libraries in the directory /opt/homebrew
. Homebrew deposits the packages in the directory /opt/homebrew/Cellar/<packagename>/<versionnumber>
. In the parmfile for configure, these directories are not mentioned, because this would require up adjust the version number after each upgrade. Rather, one refers to the collection of symbolic links contained in /opt/homebrew/lib
, opt/hombrew/include
, /opt/homebrew/bin
Currently the cp-paw code uses the packages (Caution: there may a few others):
- fftw
- openmpi
- libxc
The BLAS and LAPACK packages are included in the Accelerate framework of MacOS, which is selected with the compiler option -framework Accelerate
.
The packages can be kept to the most recent version using the commands brew update
and brew upgrade
.
Compiler flags
Recommendations for compiler flags for debugging