Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/155.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 检测Visual Studio项目';s属性_C++_Visual Studio_Intel Mkl - Fatal编程技术网

C++ 检测Visual Studio项目';s属性

C++ 检测Visual Studio项目';s属性,c++,visual-studio,intel-mkl,C++,Visual Studio,Intel Mkl,我正在从事一个项目,其中Intel MKL很好,但并非在所有目标平台上都可用,因此我必须检查它的存在是否相应 我已在Visual Studio项目的属性中启用了英特尔性能库,如中和中所述,但我没有得到中所述的任何预处理器定义,例如\uu英特尔MKL\uuu未定义 你知道我该怎么做吗?或者任何其他检测英特尔MKL的方法?我找到了一种很好的折衷方法,但不是很优雅 显然,我们可以在构建事件中检查属性页设置的值。在发现一个名为UseIntelMKL的宏后,我决定将config.h相应地绑定到它的值,并使

我正在从事一个项目,其中Intel MKL很好,但并非在所有目标平台上都可用,因此我必须检查它的存在是否相应

我已在Visual Studio项目的属性中启用了
英特尔性能库
,如中和中所述,但我没有得到中所述的任何预处理器定义,例如
\uu英特尔MKL\uuu
未定义


你知道我该怎么做吗?或者任何其他检测英特尔MKL的方法?

我找到了一种很好的折衷方法,但不是很优雅

显然,我们可以在构建事件中检查属性页设置的值。在发现一个名为
UseIntelMKL
的宏后,我决定将
config.h
相应地绑定到它的值,并使用此
config.h
中定义的预处理器指令

这里大致是充当
预构建事件的脚本。我基本上是在
config MKL.h
中定义自己

if "$(UseIntelMKL)"=="Parallel" (
  xcopy /Y /I $(ProjectDir)config-mkl.h $(ProjectDir)config.h
) else (
  xcopy /Y /I $(ProjectDir)config-nomkl.h $(ProjectDir)config.h
)

这不是一个解决方案,而是一个黑客,我的朋友。:)我发布了一个解决方案。请阅读我的问题和我的评论,这是关于检测Visual Studio项目属性中是否启用了英特尔MKL的
。该项目仅适用于Windows,您建议安装另一个构建系统。我在这里所做的只是检测Visual Studio项目的属性中是否启用了英特尔MKL。它是一个构建系统生成器。例如,它有助于在Windows上生成命令行,例如VS解决方案等,但它允许您在计算机上保留多个版本的MKL。并允许您使用英特尔编译器进行编译。。。。但是,嘿,它对你有用,所以。别见怪祝你好运。