ubuntu14.04.5装cuda7.5记录(解决unable to locate the kernel source,装cuda黑屏问题,装cuda循环登录问题)

来源:互联网 发布:python rfm模型 编辑:程序博客网 时间:2024/06/06 09:41

(自己的电脑是F华硕 L5900U GEFORCE 940M,这篇博客记录的不是解决问题的通用的方法论,而是记录自己的一次尝试,大家要仔细阅读,找到对你自己有用的,希望对大家有帮助)

之前一篇博客装的ZED双摄配置是在dell电脑上安装的,总体来说能装完cuda,已经成功90%,之前说60%真的是失误。幸好已经有了一些经验这次花了两天时间配出来了,不过其路更坎坷。

主要是因为出现了一个关于内核的错误,对于我们这些不是计算机出身的很是头疼,无奈到处google,也得到了实验室师兄弟的支持与鼓励==怎么感觉自己获奖了,不多说了,这次没有图上了=_=


直接上在sudo sh cuda*.run时装驱动时候的error

nstalling the NVIDIAdisplay driver...


The driverinstallation is unable to locate the kernel source. Please make surethat the kernel source packages are installed and set up correctly.If you know that the kernel source packages are installed and set upcorrectly, you may pass the location of the kernel source with the'--kernel-source-path' flag.

看了好几天这个error,国外的网站几乎查了便,都说让我

sudoapt-get install linux-headers-$(uname-r)


可能是我学艺不精,并不懂它是什么意思吧,反正没用,如果有用请告诉具体怎么操作


顺便说一下,安装ubuntu14.04的时候联网安装,内核就能变为4.4.0-42-generic,然后我就卸载了之前的版本的内核,

sudo apt-get purge linux-image-4.4.0-31-generic linux-image-extra-4.4.0-31-generic

不知道这个有没有用,还没来得及尝试,所以给小伙伴参考,详细见reference1


本来想绕过去,但是尝试了各种办法,都是无解,当然包括

sudo sh *.run –kernel-source-path=/usr/src/linux-headers-4.4.0-42-generic

这样的命令,都是无解。

无奈之下,只好自己装驱动=_=.


办法一:去了NVIDIA官方网站上,下了个*.run的最新的驱动包,安装完之后循环登录=_=,虽然之前也禁了nouveau,但还是不行,据说是不小心安装了opengl的包。实在是心累,Ctrl+Alt+F3tty模式下

sudo apt-get --purgeremove nvidia*

(插播一句这个命令只能卸载NVIDIA*.run包和apt-get install方法安装的nvidia驱动,如果是用cuda*.run包安装的驱动,请用这个命令sudo /usr/bin/nvidia-uninstall

把它卸了,循环登录问题解决了,偷偷告诉你,博主还遇到装完驱动黑屏的,同样的方法一样可以解决。


方法二:第一个方法对我来说不行(对你们可能有用哈),就去找第二个了,

tty

Ctrl+Alt+F3

关闭X

sudo service lightdm stop

然后卸载之前可能存在的驱动:

sudo apt-get --purge remove nvidia*

只需一条命令

sudo apt-get install nvidia-

有人问上面那条命令没写完啊,其实就是写这么多,然后猛击tab键两次(也可以轻点),下面就会出来许多版本的驱动,当然是安装一个版本最高的,例如

sudo apt-get install nvidia-352

即可。

这个命令就厉害了,安装到最后会让你设置一个不小于8位的密码,是用来disable  Secure Boot的。(也有可能不会出现,因为可能你原来就已经disable Secure Boot了)

你就设一个密码,然后

sudo reboot

开机之后,会跳出一个东西,问你是不是要改变security相关的settings,当然是要改变,然后会让你输密码,这个比较奇葩,它是问你密码串的第几个,一次只用

输入一个,然后按回车就行=_=,很明显我在这里浪费了很多时间。如果不把这个securitybootdisable掉的话,就会出现这个ERRORModprobeerror cloud not insert ‘nvidia’ Required key not availble 详细见reference2


然后开机(不一定能开啊,记得无论出现循环登录还是黑屏,直接按照上面把驱动卸掉,然后换个版本的驱动),装cuda*.run中除了驱动其他的东西,然后试试那

demo吧。可能是ERRORnocuda-capable device is detected。我估计这个错误和我还遇到过的insufficient version这样的错误都是因为没有安装cuda*.run包里

的驱动导致的。

瞬间想跳楼了,幸好我们实验室4楼,我不敢跳。很明显,驱动没装好,卸载之=_=。其实不要看方法二这个过程看似没用,其实他已经悄悄解决了unable to locate

the kernelsource的这个问题,是的,没错!就是这么神奇,这个时候你再sudosh cuda*.run安装驱动的时候,就不会报之前unableto locate the kernel source那个

错啦!而且用run包里的驱动,没有no cuda-capable device is detected等错误,简直完美。(这里我还是像第一篇博客那样,用cuda8.0的run包装NVIDIA驱动,用cuda7.5的run包装其他所有的)

接下来,该怎么装就怎么装,你懂的。


更新线

----------------------------------------------------------------------------------------------------------------------------------------------------

昨天想来还遇到一个新问题,遂又忍不住去折腾了一下,幸好比较简单,也有参考网站,详见reference 3

安装cuda之后具体的ERROR:

Installing the CUDA Toolkit in /usr/local/cuda-7.5 …

Missing recommended library: libGLU.so
Missing recommended library: libX11.so
Missing recommended library: libXi.so
Missing recommended library: libXmu.so

Installing the CUDA Samples in /home/zhou …
Copying samples to /home/geo/NVIDIA_CUDA-7.5_Samples now…
Finished copying samples.

===========
=
 Summary =
===========

Driver: Not Selected
Toolkit: Installed in /usr/local/cuda-8.0
Samples: Installed in /home/geo, but missing recommended libraries

之前博主硬着头皮忽略了这个ERROE,随后强行装了opencv3.1,出现了一点问题,所以还是要先解决一下的!



具体的解决方法:

根据它提示你的缺少了哪些库,去 http://packages.ubuntu.com/ 这里检索,这些库是属于什么dev,然后

sudo apt-get install *-dev   //装完所有的包
sudo apt-get install libglu1-mesa-dev libx11-dev libxi-dev libxmu-dev libgl1-mesa-dev  //上一条命令的具体例子,具体安装什么包,自己检索
sudo updatedb //这一句不能少,否则还是会报错,我也这捣鼓了很久,因为如果不更新,就locate不到库
卸载cuda(无需卸载驱动),重新安装cuda即可!




reference

1. http://zhidao.baidu.com/link?url=tjJYlGFbqzrFY0ftjW_Qry4FSeYJZzwLC9DBcBs4IGLYMZZI6En8Wz3D0QSID1gp7TOsfC2Z-p7atUKJVZT-vroaGCe_GzbT4O1PAFqSXaO


2. http://askubuntu.com/questions/762254/why-do-i-get-required-key-not-available-when-install-3rd-party-kernel-modules


3. http://stackoverflow.com/questions/22360771/missing-recommended-library-libglu-so


AutoRobot实验室:葛振华

gezh@mail.ustc.edu.cn


1 0