プログラミング:mpirxx.hをubuntu(WSL)にインストールする

前回mpir.hをWSL(Windows subsystem for Linux)にインストールしたところ、今回は、mpirxx.hがないと怒られたので、このヘッダーファイルをインストールすることにした。前回のmpirライブラリのインストールのやり方だと、どうやら、mpirxx.hはインストールされないらしい。

1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <mpirxx.h>

int main()
{
mpz_class a, b = 123;
a.set_str("123456789123456789123456789", 10);

std::cout << a + b << std::endl;
}

ここから拾ってきたコードをrunしたところ、mpirxx.hがないと拒否られた。ライブラリをインストールしたばかりなのにおかしいとあれこれ調べたら、..configureのところで、.--enable-cxxをオプション指定しないとmpirxx.hはインストールされないと、このサイトに書いてあった。

mpirxx.hをインストールするには、前回の工程に若干の修正が必要となる。

以下のコマンドを順番に実行すれば、mpirxx.hも無事インストールされる。

1
2
3
4
./configure --enable-cxx
make
make check
sudo make install

前記のコードをコンパイルしたところ、下記のようなエラーメッセージが吐き出された。

error while loading shared libraries: libmpirxx.so.8: cannot open shared object file: No such file or directory
Press <RETURN> to close this window...

libmpirxx.so.8にパスが通っていないみたいなので、ソフトリンクを作った。

sudo ln -s /usr/local/lib/libmpirxx.so.8 /usr/lib/

上記のコードをtest.cppとしてセーブして、以下のコマンドを実行。

1
2
g++ test.cpp -lmpirxx -o test
./test

この数値が正しいのかどうかは分からないが、一応は無事実行できた。

123456789123456789123456912
Press <RETURN> to close this window...
スポンサーリンク