エラーnvidia-387のインストール:エラー!カーネルでのモジュールビルドの不正な戻りステータス:


9

新しい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)

私の検索の間、私は間違って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.cnvidia-387-387.26インストールしようとしているバージョンに置き換える必要があります。)
  3. #include <linux/sched/task_stack.h>ファイルの先頭で、他のincludeステートメントの前に行を追加します
  4. sudo dpkg-reconfigure nvidia-387nvidiaドライバーを再構築するために実行します
  5. リブート

これは、nvidiaが修正をリリースするまでの一時的な回避策として機能します。私はこれをした後にcuda-9.1をインストールすることができました。


1
それは完璧に機能し、あなたは私を救った!どうもありがとう!
luke035

これはうまくいった!後世のために、これはログインループを引き起こす可能性もあります。この状況では、16.04の新規インストールが完全に更新される前に、nvidiaドライバー(私の場合はCUDA 9.1を実行するため)をインストールしようとした可能性があります。最初はドライバーが(古いカーネルで)機能しているように見えた可能性がありますが、その後14.3.xに更新すると、ドライバーはこの壊れた状態のままになりました。
Ian Danforth

0

@adikusの答えは私にはうまくいきませんでした。ヘッダーを追加した後でも、ビルドエラーが発生し続けます。私の問題を修正したのは、ドライバーのバージョンを410にアップグレードすることでした。

sudo apt-get update
sudo apt-get install nvidia-410

このバージョンのコンパイルは成功し、ゲームをもう一度プレイできるようになりました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.