2015-09-19 4 views
0

Я попытался выполнить saxpy Exemple от официального не nvrtc CUDA руководство в this pageКомпиляция ошибка с ОЦП: iostream: 38: 28: фатальная ошибка: бит/с ++ config.h: Нет такого файла или каталога

Он отлично работает с компилятором г ++ на терминале и следуя инструкциям сборки:

g++ saxpy.cpp -o saxpy -I $CUDA_PATH/include -L $CUDA_PATH/lib64 -lnvrtc -lcuda -Wl,-rpath,$CUDA_PATH/lib64 

Теперь я пытаюсь выполнить его в ходу языка с помощью инструмента ОЦП. Я назвал главную функцию в «my_function», и я пытаюсь назвать ее с помощью C.my_function.

это мой ОЦП директива:

//PATH 
#cgo LDFLAGS: -L/usr/local/cuda-7.0/lib64 -L/usr/local/cuda-7.0/lib -lcuda -lnvrtc 
#cgo CPPFLAGS: -I/usr/local/cuda-7.0/include/ -I/usr/include/c++/4.8 

//FILE 
#include "saxpy_header.h" 
#include <nvrtc.h> 
#include "iostream" 
#include <cuda.h> 

Но я получаю сообщение об ошибке:

/usr/include/c++/4.8/iostream:38:28: fatal error: bits/c++config.h: No such file or directory 
#include <bits/c++config.h> 

Так что я попытался это:

#include "/usr/include/x86_64-linux-gnu/c++/4.9/bits/c++config.h" 

А теперь я получаю эту новую ошибку сообщение:

/usr/include/x86_64-linux-gnu/c++/4.9/bits/c++config.h:430:29: fatal error: bits/os_defines.h: No such file or directory 
#include <bits/os_defines.h> 

После добавления #include "/usr/include/x86_64-linux-gnu/c++/4.9/bits/os_defines.h" я получаю ту же ошибку ...

Как я могу решить эту проблему?

ответ

1

Просто дикая догадка, так как я ничего не знаю о дороге/ОЦП ...

Похоже, у вас есть AMix вверх между версией 4.8 и 4.9 г ++ компилятор.

Я хотел бы попробовать изменить CPPFLAGS линию ОЦП соответственно, к этому:

#cgo CPPFLAGS: -I/usr/local/cuda-7.0/include/ -I/usr/include/c++/4.9 

Но опять же, только гадать ...

+0

спасибо! но не работает: \ –