# 使用 Homebrew, apt, MacPorts, Nix 安装 lp_solve

查看 lp_solve 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

## 安装

```sh
sudo av install brew:lp_solve
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install lp_solve
```

  证据: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install lp_solve
```

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

### Linux

- Debian apt (92%):

```sh
sudo apt install lp-solve
```

  证据: Debian stable package indexes: lp-solve from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- Nix (92%):

```sh
nix profile install nixpkgs#lp_solve
```

  证据: nixpkgs package indexes: pkgs/by-name/lp/lp_solve/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## 软件包事实

- **软件包键:** brew:lp_solve
- **软件包管理器:** Homebrew
- **版本:** 5.5.2.14
- **来源摘要:** Mixed integer linear programming solver
- **主页:** <https://lp-solve.github.io/>
- **仓库:** <https://github.com/lp-solve/lp_solve>
- **已生成:** 2026-08-03T19:37:03+00:00

## 可执行文件

- lp_solve (别名)

## 安装行为

- Bottle: 不可用

## 版本和新鲜度

- 页面生成时间: 2026-08-03
- 管理器版本: 5.5.2.14
## 项目历史与用法

lp_solve is a free Mixed Integer Linear Programming solver and command-line utility/library. It solves linear, mixed-integer, binary, semi-continuous, and special ordered set models using revised simplex methods and branch-and-bound.

### 项目历史

The official reference guide says lp_solve was originally developed by Michel Berkelaar at Eindhoven University of Technology. Jeroen Dirks' work enabled the transition from the basic 1.5 version to the fuller 2.0 version by adding a procedural interface, built-in MPS reader, fixes, and enhancements.

The same introduction records that lp_solve moved to LGPL licensing starting with version 3.0, after earlier non-commercial terms. It also says development stagnated for a time at version 3.2 before Kjell Eikland and Peter Notebaert revived development, with later version 4 and version 5 work focused on faster solving, more stability, larger models, and new functionality.

The current GitHub repository and README continue the 5.5 line. The README explains that the jump from 5.1 to 5.5 marked more than a routine update: the solver engine was revised and optimized, numerical stability improved, LUSOL became the default basis factorization package, and the code became faster and more robust than 5.1.

### 采用历史

lp_solve is both a standalone executable and an embeddable library, which explains its broad packaging footprint. The official introduction lists use from C, VB, .NET, Delphi, Excel, Java, AMPL, MATLAB, O-Matrix, Scilab, Octave, and R, and the batch input records Homebrew, Debian/Ubuntu development packages, MacPorts, and Nix packaging.

The official FAQ provides citation data for lp_solve as an open source mixed-integer linear programming system, with version 5.1.0.0 dated 1 May 2004 and co-developers Michel Berkelaar, Kjell Eikland, and Peter Notebaert. That reflects adoption not just as a command but as software embedded or cited in optimization work.

### 使用方式

The `lp_solve` command reads MIP models from standard input or files and writes results to the console or a file. The official command reference documents built-in LP and MPS input formats, external language interfaces through XLI, redirection and pipelines, and many solver options for minimization/maximization, pivoting, scaling, presolve, basis handling, branch-and-bound, tolerances, timeouts, and model conversion.

As a library, lp_solve exposes an API for building models in memory, solving them, and reading results from many programming languages. The official introduction also notes an IDE, model input through files, and model conversion facilities, while the README highlights BFP and XLI as extension points.

### 为什么软件包爱好者会关心

lp_solve is a classic scientific package: old, portable C code, command-line executable, shared library, examples, manuals, and language bindings. It is significant in package history because it bridges Unix solver workflows, Windows IDE use, scripting-language bindings, and academic optimization examples under an LGPL license.

### 时间线

- Pre-3.0: lp_solve developed by Michel Berkelaar, with version 1.5 preceding the full 2.0 transition.
- 3.0: Project starts being released under the LGPL according to the official introduction.
- 2004: Official FAQ citation data names version 5.1.0.0 dated 1 May 2004.
- 2005: README change history records beta release of version 5.5.0.0.
- 2025: `lp-solve/lp_solve` repository created on GitHub for the maintained source mirror.

### Related projects

- LUSOL is the basis factorization package that became the default in the 5.5 line.
- XLI drivers connect lp_solve to external model languages such as MathProg.
- R, MATLAB, Octave, Scilab, Excel, Java, and .NET interfaces are part of the broader lp_solve ecosystem named by the official docs.

### 来源

- <https://api.github.com/repos/lp-solve/lp_solve>
- <https://github.com/lp-solve/lp_solve/blob/main/README.txt>
- <https://lpsolve.sourceforge.net/5.5/FAQ.htm>
- <https://lpsolve.sourceforge.net/5.5/Intro.htm>
- <https://lpsolve.sourceforge.net/5.5/lp_solve.htm>
- source_facts.package-manager-url


## 安全说明

narrow executable package without higher-risk signals.

- **Geiger 风险:** 绿色 / 低
- narrow executable package without higher-risk signals

## 其他软件包管理器记录

- Debian apt - liblpsolve55-dev - 5.5.2.11-2: normalized package name match | Debian stable package indexes: liblpsolve55-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Solve (mixed integer) linear programming problems - library | http://lpsolve.sourceforge.net
- Debian apt - lp-solve - 5.5.2.11-2: normalized package name match | Debian stable package indexes: lp-solve from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Solve (mixed integer) linear programming problems | http://lpsolve.sourceforge.net
- Debian apt - lp-solve-doc - 5.5.2.11-2: normalized package name match | Debian stable package indexes: lp-solve-doc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Solve (mixed integer) linear programming problems - documentation | http://lpsolve.sourceforge.net
- Nix - lp_solve: normalized package name match | nixpkgs package indexes: pkgs/by-name/lp/lp_solve/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - liblpsolve55-dev - 5.5.2.5-2build4: normalized package name match | Ubuntu 24.04 LTS package indexes: liblpsolve55-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Solve (mixed integer) linear programming problems - library | http://lpsolve.sourceforge.net
- Ubuntu apt - lp-solve - 5.5.2.5-2build4: normalized package name match | Ubuntu 24.04 LTS package indexes: lp-solve from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | Solve (mixed integer) linear programming problems | http://lpsolve.sourceforge.net
- Ubuntu apt - lp-solve-doc - 5.5.2.5-2build4: normalized package name match | Ubuntu 24.04 LTS package indexes: lp-solve-doc from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | Solve (mixed integer) linear programming problems - documentation | http://lpsolve.sourceforge.net
- MacPorts - lp_solve: normalized package name match | MacPorts ports tree: math/lp_solve/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/lp_solve.yml](https://github.com/mxcl/pkgdb/blob/main/combined/lp_solve.yml)


## 来源

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
