我正在尝试安装 CUDA,但收到一条消息“未找到支持的 Visual Studio 版本”。我认为这是因为我使用的是 Visual Studio 2017(社区),而 CUDA 目前仅支持 Visual Studio 2015。不幸的是,微软不允许我在不支付订阅费的情况下下载旧版本的 Visual Studio。
有没有办法解决 VS 2017 的兼容性问题,或者我可以不使用 CUDA 吗?
- 如果你想安装
CUDA 8.0
with Visual Studio 2017
您需要为 Visual Studio 2017 安装附加组件。
单击“开始”菜单并键入 Visual Studio Installer。打开 Visual Studio 安装程序
Open Individual components
选项卡并选择VC++ 2015.3 v140 toolset
under Compilers, build tools and runtimes
.
- 您还需要安装
.NET Framework 3.5
如果你没有安装它。
Nvda.Build.CudaTasks.v8.0.dll
集会依赖于 MS .NET Framework 3.5 https://stackoverflow.com/a/39862254/266068.
打开经典控制面板,转到Programs and features
并按Turn Windows features on or off
。选中 .NET Framework 3.5,然后按“确定”。
- 下载完整版
CUDA toolkit
分发并将其提取到磁盘上的某个位置。
- 如果你没有
CUDA toolkit
已安装,现在就做。如果你只有Visual Studio 2017
已安装,取消选择Visual Studio integration
复选框。
现在您想收到"No supported version of the visual studio was found"
error.
但是为了成功构建Cuda工具包项目Visual Studio 2017
,您还需要执行步骤 5 和 6。
- 前往
CUDAVisualStudioIntegration\extras\visual_studio_integration\MSBuildExtensions
文件夹中的提取分发,复制所有文件并将它们粘贴到
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\v140\BuildCustomizations:
- 在最后一步中,您需要编辑您的
Cuda
用于识别 NVidia 的构建任务的项目Visual Studio 2017
。打开你的.vcxproj
在文本编辑器中查找文件并查找所有出现的CUDA 8.0.props
。将字符串开头的宏替换为$(VCTargetsPath14)
这样 XML 片段将如下所示:
<ImportGroup Label="ExtensionSettings">
<Import Project="$(VCTargetsPath14)\BuildCustomizations\CUDA 8.0.props" /></ImportGroup>
不要忘记编辑文件末尾的自定义目标路径:
<ImportGroup Label="ExtensionTargets">
<Import Project="$(VCTargetsPath14)\BuildCustomizations\CUDA 8.0.targets" /></ImportGroup>
Make sure to double check your path conifuration!
If you use nvcc
from command prompt you might not be calling cl.exe
from Visual Studio
folder!
现在您可以从 Visual Studio 2017 构建您的 Cuda 项目。
该解决方案的部分内容来自奥列格·塔拉索夫博客 https://www.olegtarasov.me/how-to-build-cuda-toolkit-projects-in-visual-studio-2017/.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)