gpt4 book ai didi

c++ - 编译 Microsoft CRT 11 (msvcrt110.dll) - 包含的正确顺序是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:43:58 25 4
gpt4 key购买 nike

我正在尝试自己编译 Microsoft CRT 11(VS2012 附带的版本)。

我知道在 VS2008 之前,微软完全支持此操作:

http://msdn.microsoft.com/en-us/library/k9a8ehy3(v=vs.90).aspx

但是因为 VS2010 你不应该再这样做了,我知道风险(主要是 - 编译错误,并且有你无法理解或解决的问题)

我使用 VS 附带的以下目录作为输入代码和头文件:

 Code:
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\crt\src
Headers:
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include
C:\Program Files (x86)\Windows Kits\8.0\Include\shared
C:\Program Files (x86)\Windows Kits\8.0\Include\um
C:\Program Files (x86)\Windows Kits\8.0\Include\WinRT

(到目前为止,我所做的唯一更改是从项目中删除了一些 MSIL 源)

大部分代码已经编译。但是我无法编译文件

 C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\crt\src\assert.c

因为错误:

 error C3861: '_ReturnAddress': identifier not found

如果我添加

 #include <intrin.h>

解决了。但我认为它应该可以在不直接更改代码的情况下解决。

当然,我一直在面临新的挑战。但我认为当前的解决方案是修复头目录的包含顺序。头目录应该以什么顺序使用?

最佳答案

您可以在 visual studio 项目中强制包含(不更改源代码)(尽管我不确定这是否是更好的解决方案)。

为此,右键单击解决方案资源管理器中的 .c,然后进入 C/C++ -> 高级 -> 强制包含文件并添加 intrin.h(或在命令行中添加/FI"intrin.h").

关于c++ - 编译 Microsoft CRT 11 (msvcrt110.dll) - 包含的正确顺序是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27083673/

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