[英]How to install MPFR and GMP for C++ on visual studio
据我了解,我应该先安装 GMP。 我为此目的找到的唯一教程是http://cs.nyu.edu/exact/core/gmp/ ,当我到达第 3 步时:“打开 gmp.dsw(用于 VC++.Net 的 gmp.vcproj)以构建 GMP”我收到很多构建错误。 你可以在这里下载: http : //www.f2h.co.il/msbz68nzzip 。 有很多错误,例如“致命错误 C1083:无法打开包含文件:'fib_table.h':没有这样的文件或目录”。
有其他教程吗? 我该怎么办?
我在 Windows 7 上使用 Visual Studio 2010。
本指南将帮助您使用 MPFR 和 MPIR(GMP 的 Windows 端口)使用一些预构建的二进制文件启动和运行 VS 项目。 (这是 VS 项目的链接和我提到的下载的二进制文件: https : //www.dropbox.com/s/p08cw59bic4f02v/MPFR-VSProj.zip?dl=1 )
从以下位置获取预编译文件: http : //www.holoborodko.com/pavel/mpfr/#projects
mpfr_mpir_x86_x64_msvc2010(使用 MSVC 2010 预编译的 mpfr mpir
由于它是用 MSVC 2010 编译的,因此需要 Microsoft Visual C++ 2010 * Redistributable。 如果我们尝试在调试模式下运行程序,我们将无法运行。 我们将收到此错误:“程序无法启动,因为您的计算机中缺少 MSVCP100.dll ”。 本质上,MSVCP100.dll 是 Visual Studio 2010 安装的一部分,但不在 Redistributable 中,它只包含发行版构建所需的 dll
- 注意:visual studio 仍然允许在发布配置中进行调试,因此当您只是尝试启动和运行时,在此阶段调试不是一个大问题
mpfrc++-3.6.2(Holoborodko 的 c++ 包装器)
注意:这些二进制文件已经有几年的历史了,但它们已经过测试并且“相对没有错误”
这对于现在开始是必要的,因为我们缺少 2010 Redistributable 中的调试 dll(应该已作为 VS 安装的一部分安装)
配置属性 > VC++ 目录
- 包含目录:添加包含目录的路径
- 库目录:添加到您的 lib 目录的路径
配置属性 > 链接器 > 输入 > 附加依赖项
- 将以下内容添加到此列表中: mpfr.lib; mpir.lib;
配置属性 > C/C++ > 代码生成 > 运行时库
- 选择“多线程DLL(/MD)”
配置属性 > 调试 > 命令参数
- 附加:“-lmpfr -lgmp”
配置属性 > 构建事件 > 构建后事件
- 命令行:'XCOPY "$(SolutionDir)lib*.dll" "$(TargetDir)" /D /K /Y'
- 描述:“将 DLL 复制到目标目录”
- 在构建中使用:是
告诉 VS 在清理输出文件夹时清理 DLL:
配置属性 -> 常规 -> 清理时删除的扩展
- 添加:'*.dll'
要测试您的项目,请从 mpfrc++-3.6.2 文件夹中的“example/example.cpp”复制 main()
有用的 SO 文章:
我遇到了类似的问题,刚刚通过下载预编译的 MPIR 和 MPFR 库而不是在 Windows 上需要 mingw 或类似的 GMP 来解决它。
这是我的解决方案的链接: How to install MPFR with Visual Studio 2008 /2010
希望这有帮助
现在可以在这里找到@casevh 的完美解决方案: Build mpir/mpfr/mpc via VC++
使用VCPKG包管理系统应该可以解决您的痛苦。 我在 windows 下使用 GNU libs 等的大部分都是通过这种方式解决的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.