# Install ipopt with Homebrew, MacPorts, Nix, scoop, zypper

Interior point optimizer. Version 3.14.19 via Homebrew; verified 2026-06-25.

## Install

```sh
sudo av install brew:ipopt
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install ipopt
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install ipopt
```

  Evidence: MacPorts ports tree: math/ipopt/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#ipopt
```

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

- zypper (92%):

```sh
sudo zypper install Ipopt-devel
```

  Evidence: openSUSE Tumbleweed package metadata: Ipopt-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

### Windows

- Scoop (92%):

```sh
scoop install main/ipopt
```

  Evidence: Scoop official bucket manifest trees: bucket/ipopt.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:ipopt
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/ipopt>
- **Version:** 3.14.19
- **Source summary:** Interior point optimizer
- **Homepage:** <https://coin-or.github.io/Ipopt/>
- **Repository:** <https://github.com/coin-or/Ipopt>
- **Upstream docs:** <https://coin-or.github.io/Ipopt>
- **License:** EPL-2.0
- **Source archive:** <https://github.com/coin-or/Ipopt/archive/refs/tags/releases/3.14.19.tar.gz>
- **Last updated:** 2026-06-25T13:37:46+02:00
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- ipopt (cli)
- ipopt_sens (cli)
- ipopt (alias)
- ipopt_sens (alias)

## Dependencies

- ampl-asl
- gcc
- openblas

## Build dependencies

- openjdk
- pkgconf

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, sonoma, ventura, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 3.14.19
- Package-manager updated: 2026-06-25
- Local data: ok
- Upstream repository: https://github.com/coin-or/Ipopt
- Upstream latest detected: releases/3.14.19 (current)
## Project history and usage

Ipopt is the COIN-OR Interior Point Optimizer, a large-scale nonlinear programming solver used through native libraries, modeling environments, and command-line solver integrations.

### Project history

Ipopt originated in Andreas Wachter's dissertation research at Carnegie Mellon University under Lorenz T. Biegler. The original Fortran code was made open source through the COIN-OR initiative, and the project documentation says Ipopt has been developed under COIN-OR since 2002.

IBM Research later funded a C++ rewrite to make the solver easier to extend. Carl Laird helped reimplement the solver during IBM Research internships in 2004 and 2005, and the C++ 3.0.0 version was first released on August 26, 2005. The older Fortran line stopped being maintained, while the C++ line remained a COIN-OR project.

### Adoption history

Ipopt spread through optimization modeling systems rather than through a single application. The project documentation lists AMPL Solver Library support, AIMMS, APMonitor, CasADi, CppAD, .NET wrappers, cyipopt, GAMS links, NEOS, JuMP, MATLAB interfaces, OPTI Toolbox, Scilab integration, and other interfaces.

Homebrew packages Ipopt with scientific-computing dependencies such as AMPL ASL, GCC, and OpenBLAS, reflecting the solver's role as a compiled numerical component used by higher-level modeling tools.

### How it is used

Ipopt solves twice-continuously-differentiable nonlinear programs with bounds and constraints using an interior-point line-search filter method. Users typically call it from C, C++, Fortran, Java, AMPL, Python wrappers, Julia/JuMP, CasADi, GAMS, or other modeling layers rather than writing raw solver input by hand.

The command-line package is useful when a package manager needs to provide a solver executable and linkable library. The local ipopt.opt file convention lets users tune solver options alongside model runs without inventing a project-wide configuration service.

### Why package nerds care

Ipopt is a package-nerd staple because it sits at the intersection of open-source optimization, compiled math libraries, Fortran/C++ ABI details, BLAS/LAPACK choices, and modeling-language wrappers. Its packaging quality directly affects scientific Python, Julia, AMPL, and operations-research workflows.

### Timeline

- 2002: Open-source Ipopt development under COIN-OR begins.
- 2004-2005: IBM Research supports a C++ rewrite with Carl Laird's help.
- 2005: Ipopt 3.0.0 C++ version is released on August 26.
- 2006: The Wachter and Biegler implementation paper appears in Mathematical Programming.
- 2026: Homebrew formula metadata packages Ipopt 3.14.19 with OpenBLAS, AMPL ASL, and GCC dependencies.

### Related projects

- COIN-OR is Ipopt's open-source home and provides the surrounding optimization project ecosystem.
- AMPL ASL, GAMSlinks, cyipopt, CasADi, JuMP, CppAD, and ADOL-C are important interfaces or companion tools.
- BLAS/LAPACK implementations and sparse linear solvers are central to practical Ipopt performance and packaging.

### Sources

- Homebrew formula metadata supplies package-manager context and dependency shape.
- The GitHub README supplies the C++ authorship, 3.0.0 release date, supported language interfaces, platform support, and citation request.
- The Ipopt documentation supplies the origin story, COIN-OR history, algorithm description, license, related interfaces, and mailing-list archive.


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals


## 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: ./ipopt.opt
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** ipopt
- **Version Scheme:** 0
- **Revision:** 0
- **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

- Nix - ipopt: normalized package name match | nixpkgs package indexes: pkgs/by-name/ip/ipopt/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- zypper - Ipopt-devel - 3.14.19-1.3: normalized package name match | openSUSE Tumbleweed package metadata: Ipopt-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Development and header files for Ipopt | https://projects.coin-or.org/Ipopt
- zypper - Ipopt-java - 3.14.19-1.3: normalized package name match | openSUSE Tumbleweed package metadata: Ipopt-java from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Java bindings for Ipopt | https://projects.coin-or.org/Ipopt
- zypper - libipopt3 - 3.14.19-1.3: normalized package name match | openSUSE Tumbleweed package metadata: libipopt3 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | A software package for large-scale nonlinear optimization methods | https://projects.coin-or.org/Ipopt
- MacPorts - ipopt: normalized package name match | MacPorts ports tree: math/ipopt/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Scoop - main/ipopt: normalized package name match | Scoop official bucket manifest trees: bucket/ipopt.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [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.
- [Scientific computing packages](https://www.automicvault.com/pkg/scientific-computing-tools/) - Matched scientific computing metadata.
- [gcc](https://www.automicvault.com/pkg/brew/gcc/) - Runtime dependency declared by Homebrew.
- [openjdk](https://www.automicvault.com/pkg/brew/openjdk/) - Build dependency declared by Homebrew.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [scip](https://www.automicvault.com/pkg/brew/scip/) - Popular package that depends on this formula.
- [cbc](https://www.automicvault.com/pkg/brew/cbc/) - Shares av.db curated category or tags: cli, coin-or, optimization, science, solver.
- [clp](https://www.automicvault.com/pkg/brew/clp/) - Shares av.db curated category or tags: cli, coin-or, optimization, science, solver.
- [lp_solve](https://www.automicvault.com/pkg/brew/lp-solve/) - Shares av.db curated category or tags: cli, optimization, science, solver.
- [soplex](https://www.automicvault.com/pkg/brew/soplex/) - Shares av.db curated category or tags: cli, optimization, science, solver.
- [g2o](https://www.automicvault.com/pkg/brew/g2o/) - Shares av.db curated category or tags: cli, optimization, science.
- [gaul](https://www.automicvault.com/pkg/brew/gaul/) - Shares av.db curated category or tags: cli, optimization, science.
- [glpk](https://www.automicvault.com/pkg/brew/glpk/) - Shares av.db curated category or tags: cli, optimization, science.

## Combined YAML source

View the package source record on GitHub. [combined/ipopt.yml](https://github.com/automic-vault/db/blob/main/combined/ipopt.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
