1

我最近编写了一个使用公共域 mpir 和 mpfr 库的 C 程序。我一直在使用 Microsoft Visual C++ 10.0 编译器在 Windows 上编译它。为了让它发挥作用,我必须执行以下操作:

  • 从http://gladman.plushost.co.uk/oldsite/computing/gmp4win.php下载/构建 mpir 和 mpfr 库
  • 将文件移动mpir.hmpfr.hMicrosoft 编译器的 Include 目录中
  • 将文件mpir.lib、、mpir.pdb和移动mpfr.libmpfr.pdbMicrosoft 编译器的 lib 目录中
  • #include mpir.h并且mpfr.h在程序中
  • 编译使用cl <..module names..> /link mpir.lib mpfr.lib

我现在想将我编写的源文件/头文件发送给其他人,以及他们可以用来编译代码并检查它是否工作的 makefile。由于该人不会安装 mpir / mpfr 库,并且可能不会使用相同的编译器,因此我不太确定如何执行此操作。

这是我能做的:

  • 将二进制文件mpir.lib、、mpir.pdb以及源mpfr.lib/mpfr.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.hmpir.libmpfr.hmpfr.lib。PDB 文件包含调试信息,不是编译所必需的。

另外,我不知道如何创建一个makefile,但是一个带有上面命令的简单批处理文件应该足以满足如此简单的事情。

于 2013-01-15T23:19:28.030 回答