1

私は最近、パブリックドメインのmpirおよびmpfrライブラリを使用するCプログラムを作成しました。私は、Microsoft Visual C ++ 10.0コンパイラを使用して、Windowsでコンパイルしています。それを機能させるために、私は次のことをしなければなりませんでした:

  • http://gladman.plushost.co.uk/oldsite/computing/gmp4win.phpからmpirおよびmpfrライブラリをダウンロード/ビルドします。
  • ファイルmpir.hmpfr.hMicrosoftコンパイラのインクルードディレクトリに移動します
  • ファイルmpir.lib、、をMicrosoftコンパイラのlibディレクトリにmpir.pdb移動しますmpfr.libmpfr.pdb
  • #include mpir.hmpfr.hプログラムで
  • を使用してコンパイルcl <..module names..> /link mpir.lib mpfr.lib

私は今、私が書いたソース/ヘッダーファイルを、コードをコンパイルしてそれが機能することを確認するために使用できるmakefileとともに他の誰かに送信したいと思います。その人はmpir/mpfrライブラリをインストールしておらず、同じコンパイラを使用していない可能性があるため、これを行う方法がよくわかりません。

これが私にできることです:

  • それらにバイナリ、、、mpir.libおよびソース/ヘッダーファイルmpir.pdbを送信します。mpfr.libmpfr.pdb

これが私ができないことです:

  • Microsoft Visual C++10.0のセットアップ全体を送信します
  • Includeファイルをディレクトリに貼り付けるように依頼しますlib(他に方法がない場合を除く)

理想的には、ソース/ヘッダーファイルを、関連するmpir / mpfrバイナリ、およびプログラムをビルドするために実行できるmakefileと一緒に送信できる必要があります。

よろしくお願いします!

4

1 に答える 1

1

いったいなぜこれらのファイルをコンパイラのインストールパスに追加するのですか?コンパイラには、検索パスを指定するためのコマンドラインオプションがあります。

例えば、

cl /I"path/to/mpfr/header" <...filenames...> /link /LIBPATH:"path/to/mpfr/lib" mpir.lib mpfr.lib

ソースコードmpir.h、mpir.lib、mpfr.h、mpfr.libのみ送信する必要あります。PDBファイルにはデバッグ情報が含まれており、コンパイルには必要ありません。

また、makefileの作成方法もわかりませんが、上記のコマンドを使用した単純なバッチファイルで十分です。

于 2013-01-15T23:19:28.030 に答える