GNU MPFRをインストールしようとすると奇妙な問題が発生します。

GNU MPFRをインストールしようとすると奇妙な問題が発生します。

GNU MPFRをインストールしようとしています。ソースコードをダウンロードして入れてcd入力したところ、./configure何度か確認されたのですが(私の知る限りは大丈夫でした)、舞台に上がると問題が発生しますconfig.status: creating Makefile。これが言う内容です:

configure: creating ./config.status
config.status: creating Makefile
dyld: Library not loaded: /usr/local/opt/mpfr/lib/libmpfr.4.dylib
  Referenced from: /usr/local/bin/gawk
  Reason: image not found
./config.status: line 1108: 36325 Done(141)               eval sed \"\$ac_sed_extra\" "$ac_file_inputs"
     36326 Abort trap: 6           | $AWK -f "$ac_tmp/subs.awk" > $ac_tmp/out
config.status: error: could not create Makefile

変じゃないですか?インストールしようとしています。libmpfr 4、これは明らかに必要です。libmpfr.4.dylibロードされます。

どんな提案がありますか?

答え1

まず、libmpfr.4.dylibGNU MPFR 3.x(3.0.xおよび3.1.x)およびlibmpfr.6.dylibGNU MPFR 4.0.x(現在の最新バージョン)で提供されるため、以前のMPFRバージョンとABI互換性がありません。

注:ソフトウェアのバージョン(3.0.x、3.1.x、4.0.xなど)とライブラリのバージョン管理(生産前の番号.dylib)を混同しないでください(この機能がどのように機能するかについての詳細)。

したがって、あなたのバージョンは/usr/local/bin/gawk削除されたように見えるMPFR 3.xに基づいて構築されました。 MPFR 4.xに置き換えられているようです(両方のライブラリバージョンを一緒にインストールできますが、一部のパッケージングシステムはこれらの機能をサポートしていません)。存在することを確認できます/usr/local/opt/mpfr/lib/libmpfr.6.dylib。この場合、GNU MPFRを再インストールする必要はありませんが、次のことを行う必要があります。

問題は、MPFR 3.x用に作成されたが、もはや存在しないgawkなどの古いソフトウェアを使用していることです。回避策は、そのソフトウェアをアンインストールして(エラーが発生しないように)、MPFR 4.x用に再インストールすることです。

注:MPFR 4.xがインストールされていない場合は、インストールする必要がありますが、システムはすでにいくつかのツール(gawkなど)をコンパイルされた形式で提供することができます(以前のバージョンかもしれませんが、ブートローダにはこれで十分です)。また、混合ビルド/パッケージングシステムを避けてください。 Homebrewを介してMPFRをインストールした場合は、gawkでもこれを行うとパッケージを再インストールする必要があります(MPFR 3.xおよび4.xの例)。

関連情報