我在这里读到CUDA 6.5已经开始支持C++ 11:
https://groups.google.com/forum/#!topic/thrust-users/R37GIkMG4tk
但是当我编译下面的示例代码时,我得到了
$ nvcc -std = c ++ 11 cu-gcc11.cu -o test
nvcc警告:配置的主机编译器不支持-c ++ 11标志.标志将被忽略.
cu-gcc11.cu(7):错误:缺少显式类型(假设为"int")
我的设置:CUDA 6.5,g ++ 4.5,ubuntu 12.04
代码:
#include <cuda.h>
#include <iostream>
__host__ void test() {
float a = 12.;
double b = 3.;
auto c = a * b;
std::cout << c << std::endl;
}
int main()
{
test();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
nvcc中的C++ 11支持目前是实验性的.为了正确使用它,您需要适当的配置.这在AFAIK的任何地方都没有记录,但你应该用Fedora 20或Ubuntu 14.04获得好的结果,这两者都是cuda 6.5支持的配置,包括GCC 4.8.x.
在您的情况下,您的GCC版本太旧了.
归档时间: |
|
查看次数: |
1800 次 |
最近记录: |