簡體   English   中英

帶g ++的CUDA 6.5不支持c ++ 11?

[英]CUDA 6.5 with g++ does not support c++11?

我在這里讀到CUDA 6.5已開始支持C ++ 11:

https://groups.google.com/forum/#!topic/thrust-users/R37GIkMG4tk

但是當我在下面編譯示例代碼時,我得到了

$ nvcc -std = c ++ 11 cu-gcc11.cu -o測試

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;
}

nvcc中的C ++ 11支持目前處於試驗階段。 為了正確使用它,您將需要適當的配置。 這在AFAIK的任何地方都沒有記錄,但是使用Fedora 20或Ubuntu 14.04都應具有良好的效果,這兩種都是cuda 6.5支持的配置,包括GCC4.8.x。

在您的情況下,您的GCC版本太舊了。

我認為-std=c++11在GCC 4.5中不可用。 試試-std=c++0x

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM