我安装了CUDA 3.0版本来编译。我在一些服务器上这样做,我没有权限安装额外的东西(我把它安装在我的主目录)。这是编译命令:
/home/susers/s218176/cuda3/cuda/bin/nvcc -O3 -use_fast_math -DUSING_CUDA -DKERNEL_BAL -D_NOT_USING_MPI -I/home/susers/s218176/cuda3/cuda/include/ -I/home/susers/s218176/cuda3/cuda/samples/common/inc/ -I/home/susers/s218176/cuda3/C/common/inc/ -L/home/susers/s218176/cuda3/C/lib/ -L/home/susers/s218176/cuda3/cuda/lib64/ -lcutil_x86_64 -lcudart -lm --ptxas-options=-v -gencode=arch=compute_13,code=sm_13 -gencode=arch=compute_13,code=compute_13 -gencode=arch=compute_20,code=sm_20 -gencode=arch=compute_20,code=compute_20 mcgpu.cu -o mpgpu.x
我遇到了一些错误:
/usr/include/x86_64-linux-gnu/bits/byteswap.h(47):错误:标识符“__builtin_bswap32”未定义
/usr/include/x86_64-linux-gnu/bits/byteswap.h(111):错误:标识符“__builtin_bswap64”未定义
/ usr / include / c ++ / 4.8 / cstdlib(178):错误:标识符“__int128”是 未定义
/ usr / include / c ++ / 4.8 / cstdlib(179):错误:标识符“__int128”是 未定义
kernel.cu(175):错误:标识符“clock64”未定义
kernel.cu(187):错误:标识符“__ballot”未定义
在编译中检测到6个错误 “/tmp/tmpxft_00007068_00000000-6_mcgpu.compute_13.cpp1.ii”。
我读到它是因为我的gcc版本与此版本的CUDA不兼容。是否有可能在没有完全权限的情况下进行降级(或者在主目录中安装并告诉nvcc使用此版本。) 请帮忙。
编辑: 已安装g ++:
/ usr / bin / g ++ / usr / bin / g ++ - 4.8
内核版本:
Linux supermicro 3.16.0-30-generic#40~14.04.1-Ubuntu SMP Thu 1月15日17:43:14 UTC 2015 x86_64 x86_64 x86_64 GNU / Linux