如何设置 CMake 以便与 Visual Studio 2017RC 和 CUDA 8.0 一起使用?

2023-12-08

Visual Studio 2017 RC 包含更紧密的 CMake 集成,允许用户跳过生成项目/解决方案文件的中间步骤,并将 CMake 有效地用作项目文件本身。 Microsoft 有足够的文档用于将这些功能与常规 C++ 文件一起使用,并且此网站上有足够的文档 (example)在将 CUDA 代码链接到 C++ 代码时,使 CUDA 和 Cmake 能够很好地发挥作用。

我找不到关于如何使 CMake、Visual Studio 2017 RC 和 CUDA 8.0 都能很好地运行的信息。这是一个难题,因为 2017RC 无论如何都没有集成 CUDA SDK,而我希望使用 2017RC,以便我的 CUDA 代码的 C++ 接口可以使用 C++14 和/或 C++17。我正在开始一个大型项目,该项目主要涉及编写一个通过 C++ 访问的静态 CUDA 库:因此,我想让 CMake 负责将我的 CUDA 源编译到静态库中,并且它可以帮助将链接信息提供给 Visual Studio。到目前为止,我还没有成功地使用 FindCUDA 的各种功能来完成此任务,但我认为这是由于我的误解造成的。我已经阅读了 Nvidia 关于可分离编译的文档,但这对理解 CMake 没有帮助。

此外,每当我尝试在 VS2017RC 中使用 CMake 时,我仍然会得到 CMake 喜欢吐出的各种 vcxproj 文件。这是由于我的错误造成的吗?如何编辑构建命令参数或 CMakeLists.txt 以演示功能here上班?


非常简短(仅在撰写本文时)的答案是您不能。 CUDA 8不支持VS2017。目前仅支持 VS2015。

您总能找到CUDA发行版支持的编译器/IDE版本here

编辑补充一下,CUDA 9 版本将添加对 VS2017 的官方支持。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何设置 CMake 以便与 Visual Studio 2017RC 和 CUDA 8.0 一起使用? 的相关文章

  • VB.NET 相当于 C# 属性简写吗?

    是否有与 C 等效的 VB NET public string FirstName get set 我知道你能做到 Public Property name As String Get Return name ToString End Ge
  • 如何检查QProcess是否正确执行?

    QProcess process sdcompare QString command sdcompare QStringList args sdcompare command sdcompare diff args sdcompare lt
  • 如何在 C# 中从 UNIX 纪元时间转换并考虑夏令时?

    我有一个从 unix 纪元时间转换为 NET DateTime 值的函数 public static DateTime FromUnixEpochTime double unixTime DateTime d new DateTime 19
  • 推导指南中的引用和值之间的差异

    考虑类型A template
  • 将内置类型转换为向量

    我的 TcpClient 类接受vector
  • 单元测试一起运行时失败,单独运行时通过

    所以我的单元测试遇到了一些问题 我不能只是将它们复制并粘贴到这里 但我会尽力而为 问题似乎是 如果我一项一项地运行测试 一切都会按预期进行 但如果我告诉它一起运行测试 则 1 5 将通过 TestMethod public void Obj
  • C++中的类查找结构体数组

    我正在尝试创建一个结构数组 它将输入字符串链接到类 如下所示 struct string command CommandPath cPath cPathLookup set an alarm AlarmCommandPath send an
  • 将 System.Windows.Input.KeyEventArgs 键转换为 char

    我需要将事件参数作为char 但是当我尝试转换 Key 枚举时 我得到的字母和符号与传入的字母和符号完全不同 如何正确地将密钥转换为字符 这是我尝试过的 ObserveKeyStroke this new ObervableKeyStrok
  • 未经许可更改内存值

    我有一个二维数组 当我第一次打印数组的数据时 日期打印正确 但其他时候 array last i 的数据从 i 0 到 last 1 显然是一个逻辑错误 但我不明白原因 因为我复制并粘贴了 for 语句 那么 C 更改数据吗 I use g
  • Visual Studio 中的测试单独成功,但一组失败

    当我在 Visual Studio 中单独运行测试时 它们都顺利通过 然而 当我同时运行所有这些时 有些通过 有些失败 我尝试在每个测试方法之间暂停 1 秒 但没有成功 有任何想法吗 在此先感谢您的帮助 你们可能有一些共享数据 检查正在使用
  • 上下文敏感与歧义

    我对上下文敏感性和歧义如何相互影响感到困惑 我认为正确的是 歧义 歧义语法会导致使用左推导或右推导构建多个解析树 所有可能的语法都是二义性的语言是二义性语言 例如 C 是一种不明确的语言 因为 x y 总是可以表示两个不同的事物 如下所述
  • 如何将自定义 JSON 文件添加到 IConfiguration 中?

    我正在使用 asp net Autofac 我正在尝试加载自定义 JSON 配置文件 并基于该文件创建 实例化 IConfiguration 实例 或者至少将我的文件包含到默认情况下构建的 IConfiguration asp net 中
  • 如何使用 Mongodb C# 驱动程序连接多个集合

    我需要将 3 个集合与多个集合合并在一起 lookup我在 C 驱动程序中尝试过 它允许我 lookup用户采集但无法执行秒 lookup用于设置集合 有人可以帮忙吗 db Transactions aggregate lookup fro
  • 等待线程完成

    private void button1 Click object sender EventArgs e for int i 0 i lt 15 i Thread nova new Thread Method nova Start list
  • 有人可以提供一个使用 Amazon Web Services 的 itemsearch 的 C# 示例吗

    我正在尝试使用 Amazon Web Services 查询艺术家和标题信息并接收回专辑封面 使用 C 我找不到任何与此接近的示例 所有在线示例都已过时 并且不适用于 AWS 的较新版本 有一个开源项目CodePlex http www c
  • 如何从main方法调用业务对象类?

    我已将代码分为业务对象 访问层 如下所示 void Main Business object public class ExpenseBO public void MakeExpense ExpensePayload payload var
  • 如何在按钮单击时模拟按键 - Unity

    我对 Unity 中的脚本编写非常陌生 我正在尝试创建一个按钮 一旦单击它就需要模拟按下 F 键 要拾取一个项目 这是我当前的代码 在编写此代码之前我浏览了所有统一论坛 但找不到任何有效的东西 Code using System Colle
  • 有没有办法强制显示工具提示?

    我有一个验证字段的方法 如果无法验证 该字段将被清除并标记为红色 我还希望在框上方弹出一个工具提示 并向用户显示该值无效的消息 有没有办法做到这一点 并且可以控制工具提示显示的时间 我怎样才能让它自己弹出而不是鼠标悬停时弹出 If the
  • 编译时“strlen()”有效吗?

    有时需要将字符串的长度与常量进行比较 例如 if line length gt 2 Do something 但我试图避免在代码中使用 魔法 常量 通常我使用这样的代码 if line length gt strlen Do somethi
  • 如何正确使用 std::condition_variable?

    我很困惑conditions variables以及如何 安全 使用它们 在我的应用程序中 我有一个创建 gui 线程的类 但是当 gui 是由 gui 线程构造时 主线程需要等待 情况与下面的函数相同 主线程创建互斥体 锁和conditi

随机推荐

  • 如何从字符串中删除最后一个字符

    这可能是一个简单的任务 但我是 PHP 新手 我正在创建一串从数据库获取的值以用于特定目的 如何从字符串中删除最后一个字符 str foreach dataarray as value str value 它给了我类似的字符串ABC DEF
  • Jaas - 请求可更新的 Kerberos 票证

    我有一个 Java API 它与 Kerberos 服务器通信并执行各种操作 截至目前 我的 API 向 Kerberos 服务器请求不可更新的票证 据我了解 jaas 配置文件有一个选项可以将 renewTGT 选项设置为 true 以便
  • OpenCV (C++) - 设置像素的 HSV 值

    我有一个 RGB 图像 已转换为 HSV 我的目标是将每个不满足特定色调值 100 的像素设置为黑色 所以 H S V 0 我有这个代码 frame3是HSV Mat图像 色调 100 for int i 0 i
  • 计算字符串中的单词数

    我正在自学C 我编写了这个程序来计算字符串中的单词数 我知道这不是最好的方法 但这是我能想到的 我正在使用空格来计算单词数 问题就在这里 countWords ok x empty identifies it as an empty str
  • 如何在 Javascript 中迭代文件

    是否可以在 Javascript 中迭代文件集合 我正在编写一个 jQuery 插件 它要么接受图像数组 要么接受包含图像列表的目录 例如 任何一个 image1 jpg image2 jpg image3 jpg or http some
  • 如何在c中打印数组的最后一个元素

    我想检测 C 代码中整数数组的最后一个元素 否则 当数组元素为空时 我需要停止处理数组数据 实际上 我的数组有固定的最大大小 并且它是从外部文件填充的 所以我不知道它何时停止填充数组 最后一个元素就位 sizeof array sizeof
  • 如何合并同一数组内具有相同 id 的对象?

    我需要解析我的应用程序的 API 以获取此对象数组 parsedPlan id start small degressive rate 0 22 small hourly rate 2 large degressive rate 0 27
  • Java 泛型类型擦除:何时以及会发生什么?

    我读到了有关 Java 类型擦除的内容在甲骨文网站上 什么时候发生类型擦除 在编译时还是运行时 类什么时 候加载 类什么时 候实例化 很多网站 包括上面提到的官方教程 都说类型擦除发生在编译时 如果在编译时完全删除类型信息 那么当调用没有类
  • 从一个 .ps 文件创建两个 pdf?

    我需要将文本文件重新格式化为 PDF 我使用 Perl 根据文本文件中的内容修改现有的 PostScript 模板文件 有时 此文本文件足够长 需要两页 PDF 我可以使用 GhostScript 从一个 ps 文件创建两页 PDF 文件吗
  • Glassfish 有一个进程已经在使用管理端口 4848

    asadmin start domain domain1 但它显示了这个错误 There is a process already using the admin port 4848 it probably is another insta
  • iOS 4.3 的 addChildViewController 替代方案

    我想使用与 addChildViewController 相同的功能 但对于版本 4 3 addChildViewController 仅在版本 5 中可用 提前致谢 尽管不建议这样做 但您可以创建一个实例UIViewController访
  • 使用 taglib 在 WPF 中的图像框中显示封面艺术

    我正在制作一个播放器 但我陷入了一个看似简单的问题 我需要将歌曲的封面艺术显示在一个图像框中 我找到了这两个解决方案 This var file TagLib File Create filename if file Tag Picture
  • 将两个表中的两列合并为一个表

    我正在尝试按两个不同表中的两个不同列进行排序 情况是这样的 我有 1 个表 shops 其中有一列名为 shopy 这是一个 INT 列 另一个表称为 infra 有一列称为 y 也是一个 INT 我想选择这两列并按它们排序 所以我会得到如
  • libjpeg 输出缩放

    libjpeg 是否允许 有例程来缩放输出图像 我有一个图像 在保存和加载时需要调整大小 在输入上提供宽度 1 高度 1 并在输出上获取宽度 2 高度 2 我真的不能使用外部的任何东西 是的 libjpeg 确实支持图像缩放 但有一些限制
  • 测量网站在线时间

    我想衡量用户在我的网站上花费了多少时间 社区网站需要它 您可以在其中说 用户 X 已在此处花费了 1397 分钟 在阅读了一些有关这方面的文档后 我知道没有完美的方法来实现这一点 你无法测量准确的时间 但我正在寻找一种能够提供良好近似值的方
  • 黄瓜:未定义步骤,尽管应该定义步骤

    我已经创建了以下步骤 Given the feed has an item published at do feed name feed item title published at feed Feed find by name feed
  • 如何在 Vuex 操作完成之前阻止 Vue 生命周期继续进行?

    在我的应用程序中 我想在应用程序的其余部分启动之前初始化 3 个 Vuex 模块 然而 无论我如何尝试 Vue 实例生命周期挂钩中执行初始化的代码都会在 3 个模块完成初始化之前继续运行 我在执行初始化的 Vuex 操作中的代码周围添加了一
  • 重置bxSlider

    我对实现的轮播采取了不同的方向 选择 bxSlider 而不是 jCarousel 这是我正在建立的图片库http rjwcollective com equinox rishi gallery eqgall php 我遇到的问题是当我重置
  • 如何获取 youtube 频道上最新上传的视频的 ID [重复]

    这个问题在这里已经有答案了 如何使用Python获取特定YouTube频道中最新上传视频的ID 您可以请求 JSON 并解析它 以下代码为您提供第一个 最新的 结果并将其存储在first import urllib json author
  • 如何设置 CMake 以便与 Visual Studio 2017RC 和 CUDA 8.0 一起使用?

    Visual Studio 2017 RC 包含更紧密的 CMake 集成 允许用户跳过生成项目 解决方案文件的中间步骤 并将 CMake 有效地用作项目文件本身 Microsoft 有足够的文档用于将这些功能与常规 C 文件一起使用 并且