错误安装 nvidia-387:错误!内核上模块构建的错误返回状态:

luk*_*035 9 nvidia gcc drivers

我正在尝试在我的新 Ubuntu 16.04 上安装 nvidia-387。

一旦我启动,sudo apt-get install nvidia-387我总是以以下输出结束:

Building initial module for 4.13.0-26-generic
Error! Bad return status for module build on kernel: 4.13.0-26-generic (x86_64)
Run Code Online (Sandbox Code Playgroud)

在我的搜索过程中,我发现很多问题都指向错误的 gcc 版本,但经过多次尝试后,我无法找到出路:在讨论之后,我尝试使用 gcc 4.8/4-9/5.4/6 没有任何运气。

有什么帮助吗?

非常感谢。

小智 9

看起来这个问题是由最近的一些 linux 内核更新中的 linux 头文件的一些改组引起的。

相关讨论:https : //devtalk.nvidia.com/default/topic/1028016/linux/patch-for-compiling-v384-98-modules-with-linux-v4-14-9-/

我遇到了完全相同的问题,我通过应用用户PGNd 在上面的讨论中建议的补丁来修复它。

在 Ubuntu 16.04 上手动编辑 nvidia src 文件的分步说明:

  1. sudo apt-get install nvidia-387 (这将失败)
  2. sudo nano /usr/src/nvidia-387-387.26/nvidia-uvm/uvm8_va_block.c (您应该替换nvidia-387-387.26为您尝试安装的版本。)
  3. #include <linux/sched/task_stack.h>在文件开头的其他包含语句之前添加一行
  4. 运行sudo dpkg-reconfigure nvidia-387以重建 nvidia 驱动程序
  5. 重启

这应该作为临时解决方法,直到 nvidia 发布修复程序。执行此操作后,我能够安装 cuda-9.1。