web-dev-qa-db-ja.com

pkg1.runを使用したNvidiaドライバーのインストールが「Version.hが見つかりません」で終了する

私は多くのことを読み、多くのことを試しました-私のために何もうまくいきませんでした。

Geforce MX440 Mobileを搭載したDell Inspiron 8200(1600x1200)を使用しています。 「簡単な方法」(Sudo apt-get install nvidia-current)でドライバーをインストールすると、変更不可能な小さな解像度(1024x768または800x600)に悩まされます。だから私は苦労して行きました:

  • Sudo apt-get update
  • Sudo apt-get dist-upgrade
  • nouveau-driverをブラックリストに登録しました
  • 再起動した
  • Sudo sh ...で終わるNvidia 96ファイルをダウンロードして実行(pkg1.run)します。

これによりエラーが発生します。

ERROR: The kernel header file
'/lib/modules/3.08.0-35-generic/build/include/linux/version.h' does
not exist. The most likely reason for this is that the kernel source
files in '/lib/modules/3.08.0-35-generic/build' have not been
configured.

カーネルソースファイルを構成するにはどうすればよいですか? Sudo make-prepareSudo get-apt kernel-develのようなものはありませんか?

回避策は、このエラーにつながるversion.hcp -v /usr/include/linux/version.h /lib/modules/$(uname -r)/build/include/linux)をコピーすることを提案しました。

ERROR: If you are using a Linux 2.4 kernel, please make sure  you
either have configured kernel sources matching your  kernel or the
correct set of kernel headers installed  on your system.  If you are
using a Linux 2.6 kernel, please make sure  you have configured kernel
sources matching your kernel  installed on your system. If you
specified a separate  output directory using either the
"KBUILD_OUTPUT" or  the "O" KBUILD parameter, make sure to specify
this  directory with the SYSOUT environment variable or with  the
equivalent nvidia-installer command line option.  Depending on where
and how the kernel sources (or the  kernel headers) were installed,
you may need to specify  their location with the SYSSRC environment
variable or  the equivalent nvidia-installer command line option.

カーネルソースはどこにインストールされていますか?

私は...pkg1.run--kernel-source-path /usr/include/linux(version.hおよび他の多くの.hファイルがある)をパラメーターとして実行しようとしましたが、これは次のことにつながります:

 ERROR: The kernel header file
 '/usr/include/linux/include/linux/kernel.h' does not exist (...)

誰もがアイデアを持っていますか?

3
user239738

わかりました、あなたはあなたのインストールであまりにも多くのことをしているようです...何かをする前にすべてを読んでください。

必要なことは、カーネルヘッダーをインストールすることだけで、すべて問題ありません。

Sudo apt-get install linux-generic

それがあなたがしなければならない唯一のことであり、「カーネルヘッダーファイル 'version.h'が存在しません」を解決します。エラー...今、私たちはあなたがそれを正しくするためにしたことを元に戻す必要があります。

カーネルソースファイルを構成するにはどうすればよいですか? Sudo make-prepareやSudo get-apt kernel-develのようなものはありませんか?

何も設定する必要はありません。 APTを使用すると、すべてが正常に配置されます。また、Sudoを実行するためにmakeは必要ありません。 get-aptコマンドもmake-prepareコマンドもありません。そのため、それらのページを閉じたところを見て、そこに書かれていることを信用しないでください。

このエラーにつながるversion.h(cp -v /usr/include/linux/version.h/lib/modules/$(uname -r)/ build/include/linux)をコピーする回避策:

過去1年間のガイドに従うだけで、何をしているのかを知っている人のみが従う必要があります... /usr/include/linux/version.hファイルと/lib/modules/$(uname -r)/build/include/linuxは基本的に異なるパッケージで提供されます。 usrにあるものはlinux-libc-devによって提供され、必要なものはlinux-headersによって提供されます。それを除く:

Sudo rm /lib/modules/$(uname -r)/build/include/linux/version.h

エラー:カーネルヘッダーファイル '/usr/include/linux/include/linux/kernel.h'は存在しません(...)

これは、ヘッダーパッケージをインストールするときにも修正されます。

5
Braiam