GSL (GNU Scientific Library) のインストール(Ubuntu 上)

GSL は,特殊関数,ベクトル,行列,線形代数,乱数,数値積分,最小二乗法などの数値計算機能を提供する C 言語のライブラリである.このページでは,GSL のインストール手順を説明する.

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

サイト内の関連ページ

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

前準備

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 は、ビルドやパッケージ管理の際に用いる開発関連ツールである。

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

curl は,コマンドラインからファイルをダウンロードするためのツールである.後の手順で,ソースコードのダウンロードに使用する.インストールするには, 端末で,次のコマンドを実行する.

# パッケージリストの情報を更新
sudo apt update
sudo apt -y install curl

GSL のインストール(パッケージを使用)(Ubuntu 上)

Ubuntu の公式リポジトリには GSL の開発用パッケージ libgsl-dev が用意されている(Ubuntu 24.04 では GSL 2.7.1,Ubuntu 26.04 では GSL 2.8).最新版が必要でない場合は,端末で,次のコマンドを実行する.

# パッケージリストの情報を更新
sudo apt update
sudo apt -y install libgsl-dev

インストール結果を確認するには,端末で,次のコマンドを実行する.

gsl-config --version
pkg-config --cflags --libs gsl

GSL のインストール(ソースコードを使用)(Ubuntu 上)

公式リポジトリのパッケージより新しい版を使う場合は,ソースコードからビルドする.

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

  1. GSL の Web ページを開く

    https://www.gnu.org/software/gsl/

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

    curl を用いて端末からダウンロードすることもできる.その場合は,次のコマンドを実行する.

    cd /tmp
    curl -L -O https://ftp.jaist.ac.jp/pub/GNU/gsl/gsl-2.8.tar.gz
    
  10. 展開(解凍)する.
    cd /tmp
    tar -xvzf gsl-2.8.tar.gz
    

GSL のビルドとインストール

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

    --prefix=/usr/local はインストール先の指定である.make -j$(nproc) は CPU のコア数に応じた並列ビルドを行う指定である.

    cd /tmp
    cd gsl-2.8
    CFLAGS="-fexceptions -ftree-vectorize" ./configure --prefix=/usr/local
    make -j$(nproc)
    sudo make install
    
  2. 結果の確認

    エラーメッセージが出ていないこと.

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

GSL の共有ライブラリは /usr/local/lib にインストールされる.Ubuntu では,/etc/ld.so.conf/etc/ld.so.conf.d/ 内の設定ファイルを読み込み,その中の libc.conf/usr/local/lib が記載されている.そのため,通常は次のコマンドで共有ライブラリのキャッシュを更新すればよい.

sudo ldconfig

/usr/local/lib が検索パスに含まれていない場合(プログラム実行時に libgsl.so が見つからないというエラーが出る場合)は,次のコマンドで設定ファイルを追加してから,キャッシュを更新する.

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

設定結果を確認するには,端末で,次のコマンドを実行する.

ldconfig -p | grep libgsl
/usr/local/bin/gsl-config --version