GMP パッケージは数値演算ライブラリを提供します。 このライブラリには任意精度演算 (arbitrary precision arithmetic) を行う有用な関数が含まれます。
![[注記]](../images/note.png) 
          
            32 ビット x86 CPU にて環境構築する際に、64 ビットコードを扱う CPU 環境であって かつ CFLAGS
            を指定していると、本パッケージの configure スクリプトは 64 ビット用の処理を行い失敗します。
            これを回避するには、以下のように処理してください。
          
ABI=32 ./configure ...![[注記]](../images/note.png) 
          
            GMP のデフォルト設定に従うと、ホストのプロセッサー向けに最適化したライブラリを生成してしまいます。
            ホストに比べて、やや性能の劣るプロセッサーに向けたライブラリを必要とする場合は、汎用ライブラリを生成するために、configure
            コマンドに --host=none-linux-gnu
            オプションを加えます。
          
はじめに gcc-15 以上への互換性を調整します。
sed -i '/long long t1;/,+1s/()/(...)/' configure
GMP をコンパイルするための準備をします。
./configure --prefix=/usr    \
            --enable-cxx     \
            --disable-static \
            --docdir=/usr/share/doc/gmp-6.3.0
        configure オプションの意味
--enable-cxx
            C++ サポートを有効にします。
--docdir=/usr/share/doc/gmp-6.3.0
            ドキュメントのインストール先を適切に設定します。
パッケージをコンパイルし HTML ドキュメントを生成します。
make make html
![[重要]](../images/important.png) 
          本節における GMP のテストスイートは極めて重要なものです。 したがってどのような場合であっても必ず実行してください。
テストを実行します。
make check 2>&1 | tee gmp-check-log
![[注意]](../images/caution.png) 
          
            gmp のコードはビルドするプロセッサー向けに高度に最適化されます。
            このためプロセッサーを特定したコードが実はシステム性能を的確に制御できないことも起こりえます。
            それはテストにおいてエラーを引き起こしたり、gmp を利用する他のアプリケーションにおいて Illegal instruction
            というエラーとして発生したりすることがあります。 そういった場合は gmp の再ビルドが必要であり、その際にはオプション
            --host=none-linux-gnu をつける必要があります。
          
最低でも 199 個のテストが完了することを確認してください。 テスト結果は以下のコマンドにより確認することができます。
awk '/# PASS:/{total+=$3} ; END{print total}' gmp-check-log
        パッケージと HTML ドキュメントをインストールします。
make install make install-html