2014-12-02 87 views
0

我試圖在.cu文件上使用nvcc編譯.ptx代碼。對於一些它的工作原理以及對一些人來說會產生「找不到文件」的錯誤:'nvcc -ptx file.cu'致命錯誤:文件未找到

macair93278:matrixMul r8t$ nvcc -ptx matrixMul.cu 
matrixMul.cu:36:10: fatal error: 'helper_functions.h' file not found 
#include <helper_functions.h> 
     ^
1 error generated. 

但後來當我嘗試另一個文件時,它的工作原理:

macair93278:matrixMulCUBLAS r8t$ cd ../matrixMulDrv/ 
macair93278:matrixMulDrv r8t$ ls 
Makefile  NsightEclipse.xml matrixMulDrv.cpp readme.txt 
Makefile-e  matrixMul.h  matrixMul_kernel.cu 
macair93278:matrixMulDrv r8t$ nvcc -ptx matrixMul_kernel.cu 
macair93278:matrixMulDrv r8t$ ls 
Makefile  NsightEclipse.xml matrixMulDrv.cpp matrixMul_kernel.ptx 
Makefile-e  matrixMul.h  matrixMul_kernel.cu readme.txt 

也許當我跑

make  

其中一些我的PATH變量設置不同?任何想法如何修復那些不起作用的東西? 謝謝, bb

回答

0

nvcc所需的任何包含文件的路徑。您的操作方式與gcc/g++相同。只有包括您不必指定此爲(與nvcc)文件位於/usr/local/cuda/include

所以,如果你的機器上,helper_functions.h位於/usr/local/cuda/samples/common/inc默認的值,然後編譯如下:

nvcc -ptx -I/usr/local/cuda/samples/common/inc matrixMul.cu 

它爲matrixMul_kernel.cu的原因是因爲該文件沒有在它的

#include <helper_functions.h> 

聲明。

+0

羅伯特,它的作品!非常感謝你。 – travelingbones 2014-12-05 16:05:23