Platform Notes

fortsh runs on Linux and macOS. This section documents platform-specific behaviors and limitations.

Supported Platforms

PlatformCompilerStatus
Linux (x86_64, aarch64)gfortranFull support
macOS IntelgfortranFull support
macOS Apple Siliconflang-new (LLVM)Limited (127-char commands)
BSDgfortranPartial (POSIX interfaces)

Topics

Quick Summary

Linux

No significant limitations. Full feature set available.

Build:

make           # Uses gfortran
sudo make install

macOS Intel

Works fully with gfortran. Requires -frecursive flag (handled by Makefile).

Build:

brew install gcc  # for gfortran
make
sudo make install

macOS Apple Silicon

Uses flang-new from LLVM due to gfortran bugs. Has a 127-character command line limit.

Build:

brew install llvm
export PATH="/opt/homebrew/opt/llvm/bin:$PATH"
make
sudo make install

Compiler Issues

fortsh is written in Fortran 2018. Compiler compatibility varies:

CompilerPlatformIssues
gfortran 11+LinuxNone
gfortran 11+macOS IntelRequires -frecursive
gfortranmacOS ARM64Multiple severe bugs
flang-newmacOS ARM64128-byte string limit

See COMPILER_NOTES.md in the repository for details.