Installation#

1. Install the AVL binary#

AVL is a Fortran program distributed as source by MIT. Build it and place the binary at ~/bin/avl.

  1. Install dependencies and create a plain gfortran symlink:

    brew install --cask xquartz
    brew install gcc
    mkdir -p ~/bin
    ln -sf "$(ls /opt/homebrew/bin/gfortran-* | head -1)" ~/bin/gfortran
    export PATH="$HOME/bin:$PATH"  # add to ~/.zshrc
    
  2. Download the latest AVL source tarball (*.tgz) from https://web.mit.edu/drela/Public/web/avl/ and extract it:

    tar -xzf ~/Downloads/avl*.tgz -C ~/Downloads
    

    This creates:

    📁 ~/Downloads/AVL<version>/
    ├── 📁 eispack/
    ├── 📁 plotlib/
    └── 📁 bin/
    
  3. Build each component and install the binary:

    cd ~/Downloads/AVL*/eispack
    make -f Makefile.gfortran FC=gfortran
    cd ../plotlib
    cp config.make.gfortranDP config.make
    make gfortranDP FC=gfortran CC=/usr/bin/cc
    cd ../bin
    make -f Makefile.gfortranDP FC=gfortran
    cp avl ~/bin/avl
    
  1. Install dependencies and create ~/bin:

    sudo apt install gfortran libx11-dev   # Debian/Ubuntu
    # sudo dnf install gcc-gfortran libX11-devel  # Fedora/RHEL
    mkdir -p ~/bin
    
  2. Download the latest AVL source tarball (*.tgz) from https://web.mit.edu/drela/Public/web/avl/ and extract it:

    tar -xzf ~/Downloads/avl*.tgz -C ~/Downloads
    

    This creates:

    📁 ~/Downloads/AVL<version>/
    ├── 📁 eispack/
    ├── 📁 plotlib/
    └── 📁 bin/
    
  3. Build each component and install the binary:

    cd ~/Downloads/AVL*/eispack
    make -f Makefile.gfortran FC=gfortran
    cd ../plotlib
    cp config.make.gfortranDP config.make
    make gfortranDP FC=gfortran CC=/usr/bin/cc
    cd ../bin
    make -f Makefile.gfortranDP FC=gfortran
    cp avl ~/bin/avl
    
  1. Download the pre-built avl.exe from the AVL download page.

  2. Create a folder for the binary and move avl.exe into it:

    mkdir "$HOME\AppData\Local\Programs\avl"
    move "$HOME\Downloads\avl*.exe" "$HOME\AppData\Local\Programs\avl\avl.exe"
    
  3. Add that folder to your PATH permanently:

    [Environment]::SetEnvironmentVariable(
        "PATH",
        "$HOME\AppData\Local\Programs\avl;" + [Environment]::GetEnvironmentVariable("PATH", "User"),
        "User"
    )
    

    Close and reopen any terminals for the change to take effect. You can also do this through System Settings → System → About → Advanced system settings → Environment Variables — edit the Path entry under User variables and append %USERPROFILE%\AppData\Local\Programs\avl.

Note

On Windows, avl-aero-tables verify locates avl.exe via PATH — not ~/bin/avl. As long as the folder above is on your PATH, the verify step below will succeed.

Verify#

avl-aero-tables verify
# AVL x.xx found at /Users/you/bin/avl — OK

Tip

Run avl-aero-tables verify after any system update or PATH change to confirm the binary is still reachable.

2. Install the Python package#

Requires Python 3.12 or later:

python3 --version
# Python 3.12.x or later required
python3 -m venv .venv
source .venv/bin/activate      # macOS/Linux
# .venv\Scripts\activate       # Windows

pip install avl-aero-tables