# Install gmt with Homebrew, apt, dnf, Nix, pacman, winget

Tools for manipulating and plotting geographic and Cartesian data. Version 6.6.0 via Homebrew; verified 2026-06-22.

## Install

```sh
sudo av install brew:gmt
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install gmt
```

  Evidence: local Homebrew formula metadata

### Linux

- Debian apt (92%):

```sh
sudo apt install gmt
```

  Evidence: Debian stable package indexes: gmt from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install GMT
```

  Evidence: Fedora Rawhide package metadata: GMT from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#gmt
```

  Evidence: nixpkgs package indexes: pkgs/by-name/gm/gmt/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S gmt
```

  Evidence: Arch Linux sync databases: gmt from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

### Windows

- winget (92%):

```sh
winget install --id GenericMappingTools.gmt -e
```

  Evidence: Windows Package Manager source index: GenericMappingTools.gmt from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:gmt
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/gmt>
- **Version:** 6.6.0
- **Source summary:** Tools for manipulating and plotting geographic and Cartesian data
- **Homepage:** <https://www.generic-mapping-tools.org/>
- **Repository:** <https://github.com/GenericMappingTools/gmt>
- **Upstream docs:** <https://docs.generic-mapping-tools.org/>
- **License:** LGPL-3.0-or-later
- **Source archive:** <https://github.com/GenericMappingTools/gmt/releases/download/6.6.0/gmt-6.6.0-src.tar.xz>
- **Last updated:** 2026-06-22T14:03:35-07:00
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- fz_funcs (cli)
- fz_funcs.sh (cli)
- fzmodeler (cli)
- fzprofiler (cli)
- gmt (cli)
- gmt-config (cli)
- gmt_shell_functions.sh (cli)
- gmtswitch (cli)
- isogmt (cli)
- fz_funcs (alias)
- fz_funcs.sh (alias)
- fzmodeler (alias)
- fzprofiler (alias)
- gmt (alias)
- gmt-config (alias)
- gmt_shell_functions.sh (alias)
- gmtswitch (alias)
- isogmt (alias)

## Dependencies

- fftw
- gdal
- geos
- netcdf
- openblas
- pcre2

## Build dependencies

- cmake

## Uses from macOS

- curl

## Install behavior

- Post-install hook: not defined
- Caveats: GMT needs Ghostscript for the 'psconvert' command to convert PostScript files to other formats. To use 'psconvert', please 'brew install ghostscript'. GMT needs FFmpeg for the 'movie' command to make movies in MP4 or WebM format. If you need this feature, please 'brew install ffmpeg'. GMT needs GraphicsMagick for the 'movie' command to make animated GIFs. If you need this feature, please 'brew install graphicsmagick'.
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 6.6.0
- Package-manager updated: 2026-06-22
- Local data: ok
- Upstream repository: https://github.com/GenericMappingTools/gmt
- info: No cached GitHub release or tag data was available.
## Project history and usage

GMT, the Generic Mapping Tools, is an open-source collection of command-line tools for manipulating geographic and Cartesian datasets and producing publication-quality maps, plots, illustrations, and animations. It is a long-running geoscience package with a strong scripting culture.

### Project history

GMT was initiated in late 1987 at Lamont-Doherty Earth Observatory, Columbia University, by graduate students Paul Wessel and Walter H. F. Smith. Version 1 was introduced to Lamont scientists in July 1988, then spread by word of mouth and tape to institutions in the United States, the United Kingdom, Japan, and France.

Version 2.0 was released with a 1991 EOS article and spread worldwide. Version 3.0 followed in 1993 and was described in a 1995 EOS article; a major GMT 4 upgrade arrived in October 2004.

GMT 5 was released in 2013 with broad backward compatibility for GMT 4 syntax. GMT 6 arrived in 2019 with modern mode, a major workflow change intended to make plotting scripts easier to write while retaining the classic command-line model.

The project also professionalized its research-software identity through citation records. The official citation page lists papers for GMT 2, GMT 3, GMT 5, GMT 6, GMT/MATLAB, animation support, and the project's origin story, along with Zenodo DOIs for releases.

### Adoption history

The official site describes GMT as widely used across Earth, ocean, and planetary sciences and beyond, with GMT-made illustrations appearing in scientific journals, meeting posters, Wikipedia pages, and other publications.

The README broadens that audience to medical research, engineering, physics, mathematics, social and biological sciences, geography, fisheries institutes, oil companies, government agencies, and hobbyists. The official About page describes tens of thousands of users worldwide.

Packaging helped that adoption because GMT is naturally scriptable. Scientists could install a stable command suite through Unix package managers, keep plotting recipes in shell scripts or Makefiles, and reproduce figures without a graphical GIS workflow.

### How it is used

Practitioners use GMT modules for filtering, trend fitting, gridding, projecting, map projection transformations, contour maps, illuminated surfaces, 3D perspective views, and animations. The README describes about 100 core command-line tools plus around 50 specialized supplement tools.

A typical GMT workflow combines data tables or grids with commands that transform, grid, style, and render figures. The package also brings supporting data such as GSHHG coastlines, rivers, political boundaries, and optional Digital Chart of the World polygons.

Modern mode in GMT 6 lets users write more concise figure scripts, while classic mode remains important for long-lived shell pipelines and publications with reproducible plotting commands.

### Why package nerds care

GMT is a canonical scientific CLI package: many small commands, strict text/data interfaces, stable documentation, optional datasets, and decades of scripts in the wild. Package managers keep that ecosystem available without each lab maintaining a custom build.

It also sits at the intersection of Unix plotting, cartography, and research reproducibility. A GMT package is not just an application install; it is often part of a paper's build chain.

### Timeline

- 1987: GMT initiated at Lamont-Doherty Earth Observatory.
- 1988: Version 1 introduced to Lamont scientists.
- 1991: Version 2.0 released with an EOS article.
- 1993: Version 3.0 released.
- 2004: GMT 4.0 major upgrade released.
- 2013: GMT 5 series released.
- 2019: GMT 6 released with modern mode.
- 2025: GMT 6.6.0 release published.

### Related projects

- GSHHG and DCW provide common support datasets used by GMT.
- netCDF, GDAL, PCRE, FFTW, LAPACK, BLAS, GLib, Zlib, Ghostscript, FFmpeg, and GraphicsMagick are named by the README as important dependencies or external tools.
- PyGMT, GMT/MATLAB, GMT.jl, and related interfaces make GMT available from Python, MATLAB/Octave, Julia, and other environments.

### Sources

- <https://api.github.com/repos/GenericMappingTools/gmt>
- <https://docs.generic-mapping-tools.org/6.6/>
- <https://docs.generic-mapping-tools.org/6.6/changes.html>
- <https://github.com/GenericMappingTools/gmt>
- <https://www.generic-mapping-tools.org/>
- <https://www.generic-mapping-tools.org/about/>
- <https://www.generic-mapping-tools.org/cite/>


## Security Notes

No matching local secret-handling manifest was found for gmt. Nucleus package metadata is still published here so future coverage has a stable package URL.



## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: ./gmt.conf, $GMT_USERDIR/gmt.conf, ~/.gmt/gmt.conf
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** gmt
- **Version Scheme:** 0
- **Revision:** 2
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Debian apt - gmt - 6.5.0+dfsg-4: normalized package name match | Debian stable package indexes: gmt from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Generic Mapping Tools | http://gmt.soest.hawaii.edu/
- Debian apt - gmt-common - 6.5.0+dfsg-4: normalized package name match | Debian stable package indexes: gmt-common from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Generic Mapping Tools - Architecture-independent files | http://gmt.soest.hawaii.edu/
- Debian apt - libgmt-dev - 6.5.0+dfsg-4: normalized package name match | Debian stable package indexes: libgmt-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Generic Mapping Tools Library - Development files | http://gmt.soest.hawaii.edu/
- Debian apt - libgmt6t64 - 6.5.0+dfsg-4: normalized package name match | Debian stable package indexes: libgmt6t64 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Generic Mapping Tools Library | http://gmt.soest.hawaii.edu/
- Nix - gmt: normalized package name match | nixpkgs package indexes: pkgs/by-name/gm/gmt/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - gmt - 6.5.0+dfsg-3build2: normalized package name match | Ubuntu 24.04 LTS package indexes: gmt from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Generic Mapping Tools | http://gmt.soest.hawaii.edu/
- Ubuntu apt - gmt-common - 6.5.0+dfsg-3build2: normalized package name match | Ubuntu 24.04 LTS package indexes: gmt-common from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Generic Mapping Tools - Architecture-independent files | http://gmt.soest.hawaii.edu/
- Ubuntu apt - libgmt-dev - 6.5.0+dfsg-3build2: normalized package name match | Ubuntu 24.04 LTS package indexes: libgmt-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Generic Mapping Tools Library - Development files | http://gmt.soest.hawaii.edu/
- Ubuntu apt - libgmt6t64 - 6.5.0+dfsg-3build2: normalized package name match | Ubuntu 24.04 LTS package indexes: libgmt6t64 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Generic Mapping Tools Library | http://gmt.soest.hawaii.edu/
- dnf - GMT - 6.6.0-5.fc44: normalized package name match | Fedora Rawhide package metadata: GMT from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Generic Mapping Tools | https://www.generic-mapping-tools.org/
- dnf - GMT-common - 6.6.0-5.fc44: normalized package name match | Fedora Rawhide package metadata: GMT-common from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Common files for GMT | https://www.generic-mapping-tools.org/
- dnf - GMT-devel - 6.6.0-5.fc44: normalized package name match | Fedora Rawhide package metadata: GMT-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Development files for GMT | https://www.generic-mapping-tools.org/
- dnf - GMT-doc - 6.6.0-5.fc44: normalized package name match | Fedora Rawhide package metadata: GMT-doc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Documentation for GMT | https://www.generic-mapping-tools.org/
- pacman - gmt - 6.6.0-4: normalized package name match | Arch Linux sync databases: gmt from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Generic Mapping Tools for manipulating and plotting geographic and cartesian data | https://www.generic-mapping-tools.org
- winget - GenericMappingTools.gmt: normalized package name match | Windows Package Manager source index: GenericMappingTools.gmt from https://cdn.winget.microsoft.com/cache/source.msix


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Database and data packages](https://www.automicvault.com/pkg/database-data-tools/) - Matched database, SQL, migration, or data-store metadata.
- [Scientific computing packages](https://www.automicvault.com/pkg/scientific-computing-tools/) - Matched scientific computing metadata.
- [fftw](https://www.automicvault.com/pkg/brew/fftw/) - Runtime dependency declared by Homebrew.
- [gdal](https://www.automicvault.com/pkg/brew/gdal/) - Runtime dependency declared by Homebrew.
- [geos](https://www.automicvault.com/pkg/brew/geos/) - Runtime dependency declared by Homebrew.
- [netcdf](https://www.automicvault.com/pkg/brew/netcdf/) - Runtime dependency declared by Homebrew.
- [pcre2](https://www.automicvault.com/pkg/brew/pcre2/) - Runtime dependency declared by Homebrew.
- [cmake](https://www.automicvault.com/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [proj](https://www.automicvault.com/pkg/brew/proj/) - Shares av.db curated category or tags: cartography, cli, geospatial, science.
- [geographiclib](https://www.automicvault.com/pkg/brew/geographiclib/) - Shares av.db curated category or tags: cli, geospatial, science.
- [sfcgal](https://www.automicvault.com/pkg/brew/sfcgal/) - Shares av.db curated category or tags: cli, geospatial, science.
- [gnuplot](https://www.automicvault.com/pkg/brew/gnuplot/) - Shares av.db curated category or tags: cli, data-visualization, plotting, science.
- [octomap](https://www.automicvault.com/pkg/brew/octomap/) - Shares av.db curated category or tags: cli, mapping, science.
- [grace](https://www.automicvault.com/pkg/brew/grace/) - Shares av.db curated category or tags: cli, plotting, science.
- [gwyddion](https://www.automicvault.com/pkg/brew/gwyddion/) - Shares av.db curated category or tags: cli, data-visualization, science.
- [root](https://www.automicvault.com/pkg/brew/root/) - Local package facts share a topical domain. Shared terms: cli, config, data, fftw, openblas.
- [magics](https://www.automicvault.com/pkg/brew/magics/) - Local package facts share a topical domain. Shared terms: cli, data, netcdf, plotting, science.

## Combined YAML source

View the package source record on GitHub. [combined/gmt.yml](https://github.com/automic-vault/db/blob/main/combined/gmt.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
