我正在使用
Intel(R) oneAPI DPC++ Compiler 2024
编译器在 Visual Studio 中构建我的 C++ 代码:
我下载的版本是:
当我从 Visual Studio 中运行我的应用程序时,它可以工作。但是,相应输出目录中的调试或发布版本缺少英特尔编译器目录中的 DLL (
C:\Program Files (x86)\Intel\oneAPI\compiler\2024.0\bin
)。
用于调试:
sycl7d.dll
pi_win_proxy_loaderd.dll
发布:
sycl7.dll
pi_win_proxy_loader.dll
即使我将这些 DLL 分别复制到调试和发布目录中,应用程序也不会独立运行:
The application was unable to start correctly (0xc000007b). Click OK to close the application
。
还有什么我遗漏的吗?或者我应该怎么做才能使应用程序在 Visual Studio 之外工作?
这是相关的英特尔论坛帖子。
有了 this 建议(尽管是 Fortran),它在 CMD 上给了我以下输出:
C:\Program Files (x86)\Intel\oneAPI\debugger\2024.0\env>vars.bat
> was unexpected at this time.
看起来脚本没有按预期工作(是的,我还定义了环境变量
VS2022INSTALLDIR=C:\Program Files\Microsoft Visual Studio\2022\Preview
,因为它没有被Intel oneAPI command prompt
自动检测到)
使用
MSVC
编译器构建时,不存在此类问题。
此问题已通过安装英特尔编译器运行时得到解决,因为它将提供缺少的 DLL 等。有关更多信息,请参阅这个答案。