关于您收到的错误消息:
我认为您遇到了与此相同的问题,在大多数情况下,此问题是由 和 之间的不兼容引起的。就像我在您的另一个线程中建议的那样,您需要安装更高版本的 Intel Parallel Studio XE 版本才能解决此问题。Intel Parallel Studio XE version
VS version
可以肯定的是,为什么它仍然使用 MSVC 包含?重新安装没有导致任何变化。我根本无法弄清楚,为什么它会导致这个问题。有任何想法吗?
英特尔 C++ 编译器是 VS 的扩展。你可以检查它Tools=>Extensions and Updates
:

同意阿德里安的I don't think Intel would want to 'take ownership' of MFC
。对于一个简单的 C++ 项目,如果我们将 Intel C++ 编译器设置为它的编译器,那么后面究竟会发生什么?让我们看看项目文件(xx.vcxproj):
它设置<PlatformToolset>Intel C++ Compiler 19.0</PlatformToolset>
,并可能对 进行一些其他更改,但该项目在其项目文件中xx.vcxproj
仍有定义,如<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
, 。<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
所以在构建过程中仍然会导入一些关于 MSVC 的属性和定义。这就是为什么您收到的错误消息包含MSVC
...
笔记:
MSbuild是VS的构建引擎,它读取内容xx.vcxproj
来编译和构建项目。
在导入的目标文件中定义了许多任务、属性、正常 C++ 构建过程的项目,例如Microsoft.Cpp.Default.props
等等$(VCTargetsPath)\Microsoft.Cpp.targets
。
当 we 时right-click project=>Intel Compiler=>Use Intel C++
,它更改了 platformToolSet 设置,但它仍然导入 xx.cpp.targets 作为构建过程的一部分。因此,您可以看到有关 MSVC 的错误消息或构建输出中的内容。