解决ubuntu 22.04新内核6.5.0-15无法编译NVIDIA显卡驱动
创始人
2025-01-16 03:33:04
0

这里的新内核应该包括6.5.*系列的

文章目录

    • 遇到的问题:

遇到的问题:

今天我在安装NVIDIA显卡驱动发现了一个问题,主要日志如下所示:

make[3]: *** [scripts/Makefile.build:251: /tmp/selfgz1310041/NVIDIA-Linux-x86_64-550.54.14/kernel/nvidia/nvlink_linux.o] Error 1 make[3]: Target '/tmp/selfgz1310041/NVIDIA-Linux-x86_64-550.54.14/kernel/' not remade because of errors. make[2]: *** [/usr/src/linux-headers-6.5.0-15-generic/Makefile:2037: /tmp/selfgz1310041/NVIDIA-Linux-x86_64-550.54.14/kernel] Error 2 make[2]: Target 'modules' not remade because of errors. make[1]: *** [Makefile:234: __sub-make] Error 2 make[1]: Target 'modules' not remade because of errors. make[1]: Leaving directory '/usr/src/linux-headers-6.5.0-15-generic' make: *** [Makefile:85: modules] Error 2 ERROR: The nvidia kernel module was not created. ERROR: Installation has failed.  Please see the file '/var/log/nvidia-installer.log' for details.  You may find suggestions on fixing installation problems in the README available on the Linux driver download page at www.nvidia.com. 

从这个日志可以发现,他与内核冲突了。于是借助魔法搜到了ubuntuforums.org的多种方法,一个是换内核版本,有人说切换到6.2系列就好了,但我实在不行破坏内核,万一改了内核其它功能炸了。在我的不断努力之下,终于找到一个偷渡方法,但直接用这个方法我还是无法安装成功,结果我死马当活马医重新覆盖的时候,我在新内核下安装成功了!

出现问题原因在于当前内核下的GCC版本在编译现在的NVIDIA显卡内核(我下载的是550.54.14)不兼容。

我使用gcc --version | grep -e 'gcc'观察到我的GCC版本是11,而推荐的版本是12。然后没办法,我们就自己安装个gcc-12吧。

sudo apt update sudo apt install gcc-12 g++-12 

然后把现有的2个版本添加到 update-alternatives 组

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 11 --slave /usr/bin/g++ g++ /usr/bin/g++-11 --slave /usr/bin/gcov gcov /usr/bin/gcov-11 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12 --slave /usr/bin/g++ g++ /usr/bin/g++-12 --slave /usr/bin/gcov gcov /usr/bin/gcov-12 

暂时默认选择gcc-12:

$ sudo update-alternatives --config gcc There are 2 choices for the alternative gcc (providing /usr/bin/gcc).    Selection    Path             Priority   Status ------------------------------------------------------------ * 0            /usr/bin/gcc-12   12        auto mode   1            /usr/bin/gcc-11   11        manual mode   2            /usr/bin/gcc-12   12        manual mode  Press  to keep the current choice[*], or type selection number: 2 

我感觉这里的意思是,我们还是切换成手动模式保险,保不齐编译时候突然变成gcc-11了。

接下来安装驱动程序:sudo apt install --yes nvidia-driver-535 nvidia-dkms-535 nvidia-cuda-toolkit

到这里教程就说成功了,就当我激动得输入nvidia-smi时候,又报错了:NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

好好好,那我就再执行sudo bash NVIDIA-Linux-x86_64-550.54.14.run安装一下,其实这里我感觉是gcc-12那选定版本之后直接安装run文件就好了。但我没有试,因为我已经安装成功了!

最后附上成功的结果,证明我教程的可行性:


转载于染念的个人博客

参考:

  • https://ubuntuforums.org/showthread.php?t=2494273&page=3&p=14176039#post14176039

相关内容

热门资讯

黑科技有挂(德扑之星)ai助手... 黑科技有挂(德扑之星)ai助手(透视)app是啥软件(确实真的有挂);1分钟了解详细教程(微信 13...
智能ai辅助挂(德州之星)有辅... 智能ai辅助挂(德州之星)有辅助挂吗(Ai)ai辅助(竟然真的是有挂)1、系统规律教程、辅助透视等服...
黑科技辅助挂挂(wPk)发牌机... 黑科技辅助挂挂(wPk)发牌机制(透视)外挂第一视角(其实真的是有挂)是一款可以让一直输的玩家,快速...
黑科技黑科技(aa扑克)这个软... 黑科技黑科技(aa扑克)这个软件靠谱吗(透视)这个软件靠谱(一直真的是有挂)1、构建自己的辅助插件;...
黑科技辅助挂(WepokE)智... 黑科技辅助挂(WepokE)智能ai(黑科技)辅助真的假的(素来是有挂)准备好在 ia的高塔上攀登,...
好牌辅助挂(德扑之星)ai代打... 好牌辅助挂(德扑之星)ai代打怎么弄(AI)安卓模拟器(真是是有挂)1、任何ai辅助神器的玩家都可以...
黑科技实锤(wepOkE)黑科... 黑科技实锤(wepOkE)黑科技设备(黑科技)辅助从哪里下载(竟然有挂);科技安装教程;136704...
了解黑科技(AAPOKer)辅... 了解黑科技(AAPOKer)辅助工具使用教程(透视)辅助(原来真的是有挂)1、透视辅助简单,软件透明...
黑科技软件(wepOkE)黑科... 1、黑科技软件(wepOkE)黑科技(黑科技)透明挂是真的(素来真的是有挂);详细教程。2、透视辅助...
最新辅助挂(德扑)系统有哪些规... 最新辅助挂(德扑)系统有哪些规律(AI)有作弊器(果然真的有挂)小薇(透视辅助)致您一封信;亲爱玩家...