红联Linux门户
Linux帮助

遇到usr/bin/ld: cannot find -lcufft解决方法

发布时间:2017-04-21 15:30:08来源:linux网站作者:火车上遇见
Ubuntu15.04中安装完opencv2.4.9后,进入OpenCV目录/samples/c/ 运行./build_all.sh   出现下面错误:
/usr/bin/ld: cannot find -lcufft
/usr/bin/ld: cannot find -lnpps
/usr/bin/ld: cannot find -lnppi
/usr/bin/ld: cannot find -lnppc
/usr/bin/ld: cannot find -lcudart
 
去网上找了许多解决/usr/bin/ld: cannot find -lxxx问题的资料,但是都没有解决。
 
不过看到一些材料中说libcufft,libnpps,libnppi,libnppc,libcudart是cuda的库,搜索/usr/local/cuda-7.0/lib64,果然发现了libcufft.so.7.0,libnpps.so.7.0,libnppi.so.7.0,libnppc.so.7.0,libcudarts.so.7.0。
 
既然报错说是/usr/bin/ld: cannot find -lcufft,那是不是因为/usr/local/lib下面没有libcufft.so.7.0,libnpps.so.7.0,libnppi.so.7.0,libnppc.so.7.0,libcudarts.so.7.0的软连接? 
 
于是分别对上面几个文件建立软连接 sudo ln -s /usr/local/cuda-7.0/lib64/libcufft.so.7.0 /usr/local/lib/libcufft.so  
 
再次进入opencv目录/samples/c/ 运行./build_all.sh 问题解决,不会再报错,然后运行./find_obj 会出现无比nice的测试结果。完毕。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/30201.html