undefined reference to `cuInit‘

最近在入门学习cuda编程,刚开始编译cuda就报错,在此记录一下错误信息与解决方案。

源码

#include 
#include 
#include 

int main()
{
	//尝试初始化,是否成功
	CUresult code = cuInit(0);
	std::cout << " CUresult code : " << code << std::endl;
	std::cout << " __FILE__ : " << __FILE__ << std::endl;
	return 0;
}

编译命令

nvcc cuinit.cu -o cuinit 
编译时候直接报错

报错信息

/usr/bin/ld: /tmp/tmpxft_000ede52_00000000-11_cuinit.o: in function `main':
tmpxft_000ede52_00000000-6_cuinit.cudafe1.cpp:(.text+0x2c): undefined reference to `cuInit'

根据错误信息说,没找到cuInit函数,我已经包含了头文件cuda.h,但是还是没找到,于是我编译时候进行链接

修改编译命令

nvcc cuinit.cu -o cuinit -lcuda

运行程序

./cuinit
输出结果:
CUresult code : 0
__FILE__ : cuinit.cu

你可能感兴趣的:(tensorrt,c++)