GLPK (GNU Linear Programming Kit) のインストール(Ubuntu 上)

GLPK は,線形計画法 (LP)混合整数計画法 (MIP) の求解機能を持つ C 言語のライブラリである. モデル記述言語 GNU MathProg と,コマンドラインの求解プログラム glpsol を含む. このページでは,GLPK のビルドとインストールの手順を説明する.

URL: https://www.gnu.org/software/glpk/

ソフトウェア等の利用条件は,利用者自身で確認下さい.

Ubuntu の公式パッケージにも GLPK が用意されている.ソースコードからのビルドが不要な場合は, 端末で,次のコマンドを実行する。
sudo apt update
sudo apt -y install glpk-utils libglpk-dev

前準備

Ubuntu のシステム更新

Ubuntu で OS のシステム更新を行うときは, 端末で,次のコマンドを実行する。これは、パッケージ情報を最新の状態に保ち、インストール済みのパッケージをセキュリティアップデートやバグ修正を含めて更新するためである。

Ubuntu のインストールはこちらの別ページで説明する。
# パッケージリストの情報を更新
sudo apt update
# インストール済みのパッケージを包括的に更新 (依存関係も考慮)
sudo apt full-upgrade
# カーネル更新等で実際に再起動が必要な場合のみ実行を推奨
# sudo shutdown -r now

C/C++ コンパイラと Make とビルドツールのインストール

ソフトウェアをソースコードからビルドするには、C/C++コンパイラ (通常はGCC) や make ユーティリティといった開発ツールが重要である。Ubuntuでは、これらのツールは build-essential パッケージにまとめられている。インストールするには,端末で,次のコマンドを実行する。

sudo apt -y install build-essential libtool texinfo dpkg-dev pkg-config

libtool, texinfo, dpkg-dev, pkg-config は、より複雑なビルドやパッケージ管理の際に役立つ開発関連ツールである。

GLPK のインストール(Ubuntu 上)

GLPK のソースコードのダウンロード

  1. GNU FTP Mirror List の Web ページを開く

    https://www.gnu.org/prep/ftp.html

  2. ミラーサイト一覧の Web ページが開くので確認する.
  3. 日本のミラーサイトを選ぶために,この Web ページの下の方にある「https://ftp.jaist.ac.jp/pub/GNU/」をクリックする.
  4. ダウンロード用のサーバに接続し,GNU ソフトウェアのディレクトリ一覧が表示されるので確認する.
  5. GLPK をダウンロードするために,この Web ページの下の方にある「glpk」をクリックする.
  6. さまざまな版のファイルが表示される.
  7. 最新版の glpk-5.0.tar.gz をクリックする.ダウンロードが始まる
  8. ダウンロードしたファイルを/tmp下に置く.
  9. 展開(解凍)する
    cd /tmp
    tar -xvzf glpk-5.0.tar.gz
    

GLPK のインストール

  1. 端末で,次のコマンドを実行する.

    --prefix=/usr/local により,実行ファイルは /usr/local/bin, ライブラリは /usr/local/lib,ヘッダファイルは /usr/local/include に配置される.

    cd /tmp
    cd glpk-5.0
    ./configure --prefix=/usr/local
    make
    make check
    sudo make install
    

    (以下省略)
  2. 結果の確認

    * エラーメッセージが出ないことを確認すること.

共有ライブラリの検索パスの設定

/usr/local/lib は,ディストリビューションによっては共有ライブラリの検索パスに含まれていない. その場合,GLPK をリンクしたプログラムの実行時に libglpk.so が見つからないというエラーが発生する. 端末で,次のコマンドを実行して検索パスに追加する.

echo "/usr/local/lib" | sudo tee /etc/ld.so.conf.d/usr-local.conf
sudo ldconfig

インストールの確認

端末で,次のコマンドを実行する.版番号が表示されることを確認する.

glpsol --version