gpt4 book ai didi

c++ - 在 Visual Studio 2013 下为/MD 版本重建 Crypto++ 5.6.2

转载 作者:行者123 更新时间:2023-11-28 06:01:11 25 4
gpt4 key购买 nike

我想通过 MSVC 2013 重建 Crypto++,所以当我使用库时能够使用/MD 或/MDd 构建我的项目,而不是/MT 或/MTd,因为我使用的是 QT 5.5.1 和 MSVC2013 32 位编译器,如果我想制作 GUI 界面 - 它正在使用/MD 或/MDd!在 this Static Versus Dynamic Linking 部分的文章提到了重建(而不是构建)的必要性以及您如何从我的其他文章中看到 question我做到了,但它只适用于 Debug模式。对于 Release 模式,错误从 117 变为 53,但同样的旧错误再次发生:

cryptlib.lib(cryptlib.obj):-1: error: LNK2038: mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in main.obj

我正在做我提到的事情 here

最佳答案

I want to rebuild Crypto++ via MSVC 2013...

好的,所以这里的痛点是Microsoft changes to MSBuild at 2010 .更糟糕的是,VCUpgrade does a rather poor job of up-converting projects .

为了帮助用户完成升级过程,Crypto++ 提供了一个名为 vs2010.zip 的文件.该存档包含 Visual Studio 2010 及更高版本的预转换解决方案文件、项目文件和过滤器。这些文件于 2015 年 10 月与 5.6.3 候选发布版一起发布。

升级的解决方案文件大多是成功的。他们从 IDE 正确构建了 24 个配置中的 20 个。其中 4 个在第一次尝试时就失败了;但该过程在第二次尝试时恢复并构建了所有 24 个。我们知道它是一个依赖/排序问题,但我们不知道如何解决它。在 How to control order of Batch Build → Build All 上有一个关于 Stack Overflow 的悬而未决的问题.

现在有一个关于 Visual Studio 2010 和 VCUpgrade 主题的页面。参见 Visual Studio在 Crypto++ wiki 上。


In this article ...

我写了that article几年前。您走在正确的轨道上。


I did it, but it is only working for debug mode. For Release mode the errors from 117 go to 53, but again the same old error occures:

cryptlib.lib(cryptlib.obj):-1: error: LNK2038: mismatch detected for 'RuntimeLibrary':
value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in main.obj

我们为您添加了一个 ZIP 文件。 ZIP 是一个预转换的 Visual Studio 2010 解决方案和项目文件,它使用动态运行时链接(/MD/MDd)。 (不只是你,因为多年来很多人都问过这个问题)。

您的问题的解决方案是:

  1. 下载vs2010-dynamic.zip来自 Crypto++ wiki
  2. 在现有的 Crypto++ 分发文件之上解压缩。

关于c++ - 在 Visual Studio 2013 下为/MD 版本重建 Crypto++ 5.6.2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33263734/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com