c++ - CUDA header 包含失败,可在.cpp文件中使用

标签 c++ visual-studio-2013 compiler-errors cuda header

我在Visual Studio 2013中有一个使用CUDA Toolkit 7.5的项目,其中包含头文件适用于.cpp文件,但不适用于.cu文件。我有一个头文件test.h及其实现test.cu以及main.cu文件。

文件结构为:

projectdir/
    /include
        /test.h
    /src
        /test.cu
        /main.cu

在项目属性页面中,进行以下设置:

配置属性-> C/C++->其他包含目录=
$(ProjectDir)include;%(AdditionalIncludeDirectories)

配置属性-> CUDA C/C++->通用->其他包含目录=
$(ProjectDir)include;%(Include)
#include "../include/test.h"会编译,而#include "test.h"不会在.cu文件中编译。

Here是错误输出的粘贴框。

Here是CUDA C/C++命令行设置以及源代码的粘贴框。

任何帮助解决此问题的方法将不胜感激。虽然#include ../include/test.h让我运行该程序,但使它无法正常运行很烦人。

最佳答案

也可以通过将包含路径添加到VC++选项来解决。显然,.cu文件需要此文件,但.cpp文件不需要。

关于c++ - CUDA header 包含失败,可在.cpp文件中使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36822645/

相关文章:

c++ - Lambda 函数无法调用函数模板参数的静态函数

azure - VS 2013 部分支持 azure v12 中的证书和对称 key

wpf - 在 VS2013 的设计时显式设置/忽略可见性?

visual-studio - 从Visual Studio搜索中排除特定文件

c++ - 警告 C4146 减去无符号类型的运算符

c++ - 实现嵌套在模板类中的类的成员函数

c++ - 有没有一种方法可以使引用成为常量 setter/getter ?

c++ - 如何复制txt文件中的字符串?

c++ - 从 C++ 解析 Python 代码

c++ - "result type must be constructible from value type of input range"创建 std::vector 时