0

我需要将mpir-2.6.0库与visual c++ 2010. 我的代码将使用 c++。

我提取了两个文件夹(mpir-2.6.0vsyasm-1.2.0-win32)。然后,我复制了文件夹的内容vsyasm-1.2.0-win32(包括vsyasm.exe将其重命名为yasm.exe并放入:C:\Program Files\Microsoft Visual Studio 11.0\VC\bin\。然后,我打开了项目:mpir.sln放置在:\mpir-2.6.0\build.vc10。然后,我将项目配置更改为:Release

当我尝试构建整个解决方案时,会遇到很多错误,例如:

error C1020: unexpected #endif  c:\proj\mpir-2.6.0\mpir-2.6.0\mpir.h    4   1   lib_mpir_gc
error C1020: unexpected #endif  c:\proj\mpir-2.6.0\mpir-2.6.0\mpir.h    4   1   lib_mpir_gc
error C1020: unexpected #endif  c:\proj\mpir-2.6.0\mpir-2.6.0\mpir.h    4   1   lib_mpir_gc

但是当我单独构建每个库时,它是成功的。

构建后,我去了:\mpir-2.6.0\build.vc10\Win32\Release 并找到文件:

mpir.lib
mpirxx.lib
mpir.pdb
mpirxx.pdb

但我找不到文件:

mpir.h
mpirxx.h

我需要将它们复制到 Visual Studio 包含文件中。

我对这些配置的主要来源是:http ://www.exploringbinary.com/how-to-install-and-run-gmp-on-windows-using-mpir/ (但这是针对旧版本的库和伊萨姆)。我不明白这些错误的原因。我能够使用旧版本配置库。但我需要升级,因为图书馆有改进,而我的图书馆很旧。

4

2 回答 2

0

输出文件现在位于 mpir\lib\Win32\Release 或 mpir\dll\Win32\Release 中。

为您的 CPU 专门构建 MPIR 的推荐方法是首先运行位于 build.vc10 目录中的 mpir_config.py。mpir_config.py 将提示您提供 CPU 选项列表。那么当你打开 mpir.sln 时,你应该只为特定的 CPU 编译代码。然后编译 C++ 包装器(即先编译 lib_mpir_p3,然后编译 lib_mpir_cxx)。

编辑:我刚刚注意到您原始帖子中的另一个错误。您需要将目录“mpir-2.6.0”重命名为“mpir”。目录布局需要是“<>\mpir\build.vc10”

于 2013-01-01T17:10:08.107 回答
0

我在使用 MPIR 2.6.0 和 VS 2012 时遇到了同样的问题。我为使 MPIR 工作所做的工作是构建 lib_gc 和 lib_cxx,两者都使用 win32 和发布模式。因为我的 c++ 应用程序是 win32 控制台,所以它工作得很好。

因为我的 windows 是 64,我以为我必须构建 64 版本,但结果我错了。

于 2013-06-12T04:49:19.587 回答