まず、詳細です。
今後:カーネル: 3.2.0-2-amd64, nvidia ドライバ: 295.59
後ろに:カーネル: 3.2.0-3-amd64, nvidia ドライバ: 302.17-3
私のDebian wheezyは常に最新の状態です。実は、毎日こうやってみるとapt-get upgrade -s
そもそもこんな問題に封着するようになりました。
明らかに、一度後にapt-get upgrade
私のDebianにビルドエコシステムおよび/またはDKMS自体に関連する「欠陥」がありました。
NVIDIAドライバは、公式Wikiが推奨するどのような方法でも構築できません。公式NVIDIAバイナリ(アップデートの1つのログフラグメント)が含まれています。
出力は次のとおりですdpkg-reconfigure nvidia-kernel-dkms
。
# dpkg-reconfigure nvidia-kernel-dkms
------------------------------
Deleting module version: 302.17
completely from the DKMS tree.
------------------------------
Done.
Loading new nvidia-302.17 DKMS files...
Building only for 3.2.0-3-amd64
Building initial module for 3.2.0-3-amd64
Error! Build of nvidia.ko failed for: 3.2.0-3-amd64 (x86_64)
Consult the make.log in the build directory
/var/lib/dkms/nvidia/302.17/build/ for more information.
関連スニペットは/var/lib/dkms/nvidia/302.17/build/make.log
次のとおりです。問題はいいえ編集中に私はそれを保証することができます。
LD [M] /var/lib/dkms/nvidia/302.17/build/nvidia.o
Building modules, stage 2.
MODPOST 0 modules
make[1]: Leaving directory `/usr/src/linux-headers-3.2.0-3-amd64'
make: Leaving directory `/var/lib/dkms/nvidia/302.17/build'
それはすべてです。同じディレクトリ内の他のファイルには何の説明もありません(少なくとも私が確認した限り)。
質問する前に:私は今nouveauドライバを使用しています(とにかく選択肢はありません)、私にとってはあまりうまくいきません。私は3つのデスクトップを持っていますが、1つは映画を再生し続け、もう2つは非常に忙しい開発者です。 nouveauドライバーは少し失敗します(2番目の画面の映画は常に水平ストライプになり、XFCEコンソールはスクロールなどで少し遅れます)。
質問:
- カーネルのバージョンを変更する必要がありますか?試しましたが成功しません
3.2.0-2-amd64
でした3.2.0-3-amd64
。コンピュータを実行しよう3.2.0-3-rt-amd64
とした後、数分後にコンピュータがハングして再インストールするのが怖かったです。 - 私のビルド環境でバージョンを変更する必要がありますか? (アップデートで述べたように、これはNVIDIAの問題ではないことがわかりました)。
- 私のリンカーに問題があると仮定する必要がありますか(私はいいえを使用してパッケージで使用しています
gold
。それでは、DKMSアプローチが最終的に機能するようにするにはどうすればよいですか?接続フェーズで問題が発生しているようです(そしてMODPOSTには0つのモジュールが表示されます)。ld
binutils
個人的には、これは私が一般的に認めるよりも深いレベルで私を邪魔します。私は一度Debianに対する大きな尊敬、今彫刻。さて、apt-get upgrade
すべてのオープンソースカーネルドライバのコンパイル/リンクを中断する簡単な方法はありますか?
とても残念です。
アップデート#1:
私は実際に公式304.22 NVIDIAドライバをインストールしようとしましたが、ここにログファイルがあります。リンクが失敗したようですが、そうですか?
また、DKMS統合を同時に有効にしようとすると、スクリプトは現在のカーネルバージョンを確認できないというメッセージが表示されます(3番目の更新のテキスト)。
nvidia-installer ログファイル '/var/log/nvidia-installer.log' 作成時間:2012年7月21日土曜日22:59:30 インストーラバージョン:304.22 パス:/usr/local/rvm/gems/ruby-1.9.3-p194/bin:/usr/local/rvm/gems/ruby-1.9.3-p194@global/bin:/usr/local/rvm/rubies /ruby-1.9.3-p194/bin:/usr/local/rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin NVIDIAインストーラのコマンドライン: ./nvidia - インストールプログラム 使用: nvidia-installer ncurses ユーザーインターフェイス ->ライセンスが承認されました。 -> NVIDIAドライババージョン304.22をインストールします。 ->ドライバ(バージョン:304.22)がシステムにすでにインストールされているようです。このドライバ(バージョン:304.22)をインストールすると、既存のドライバが削除されます。あなたは本当に続けたいですか? (「いいえ」を選択するとインストールが中断されます。)(回答:はい) ->カーネルモジュールソースをDKMSに登録しますか?これにより、後で別のカーネルをインストールすると、DKMSは自動的に新しいモジュールを構築できます。 (答え:いいえ) -> CC = "gcc-4.6"を使用してCCの健全性チェックを実行します。 -> CC = "gcc-4.6"を使用してCCバージョンチェックを実行します。 -> カーネルソースパス: '/lib/modules/3.2.0-3-amd64/source' -> カーネル出力パス: '/lib/modules/3.2.0-3-amd64/build' -> rivafbチェックを実行します。 -> nvidiafbチェックを実行します。 -> Xenチェックを実行します。 -> カーネルモジュールのビルドディレクトリをクリーンアップします。 実行: 'cd ./kernel;make clean'... ->カーネルモジュールの構築: 実行: 'cd ./kernel;make module SYSSRC=/lib/modules/3.2.0-3-amd64/source SYSOUT=/lib/modules/3.2.0-3-amd64/build'... NVIDIA:KBUILDに電話しています... make -C /lib/modules/3.2.0-3-amd64/build \ KBUILD_SRC=/usr/src/linux-headers-3.2.0-3-common \ KBUILD_EXTMOD="/tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel" -f /usr/src/linux-headers-3.2.0-3-common/Makefile \ 基準寸法 test -e include/ generate/autoconf.h -a -e include/config/auto.conf || エコ; echo "エラー:誤ったカーネル構成。"; echo "include/generated/autoconf.h または include/config/auto.conf がありません。";\ echo "この問題を解決するには、カーネル src で 'make oldconfig && make prepare' を実行してください。"; エコ; /空/偽) mkdir -p /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/.tmp_versions ; rm -f /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/.tmp_versions/* make -f /usr/src/linux-headers-3.2.0-3-common/scripts/Makefile.build obj=/tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel gcc-4.6 -Wp, -MD, /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/.nv.od -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/4.6/include -I /usr/src/linux-headers-3.2.0-3-common/arch/x86/include -Iarch/x86/include/ 作成済み -Iinclude -I/usr/src/linux-headers-3.2.0-3-common /include -include /usr/src/linux-headers-3.2.0-3-common/include/linux/kconfig.h -I/tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit 関数宣言 -Wno-format-security -fno-delete-null-pointer-checks -Os -m64 -mtune=generic - mno -red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -fstack-protector -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG -fno-async-unwind-tables -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -Wframe-larger-than=2048 -Wno-unused-but-set-variable -fomit-frame-pointer - g -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -DCC_HAVE_ASM_GOTO -I/tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel -Wall -MD -Wsign-compare - Wno -俳優- qual -Wno-error -D__KERNEL__ -DMODULE -DNVRM -DNV_VERSION_STRING=\"304.22\" -Wno-unused-function -Wuninitialized -mno-red-zone -mcmodel=kernel -UDEBUG -U_DEBUG -DNDEBUG -DMODULE s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(nv)" -D"KBUILD_MODNAME=KBUILD_STR(nvidia)" -c -o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/.tmp_nv. tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nv.c /usr/src/linux-headers-3.2.0-3-common/include/linux/kernel.h:17:0 に含まれるファイルで、 /usr/src/linux-headers-3.2.0-3-common/include/linux/sched.h:55で、 /usr/src/linux-headers-3.2.0-3-common/include/linux/utsname.h:35で、 /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nv-linux.h:38で、 /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nv.c:13から: /usr/src/linux-headers-3.2.0-3-common/include/linux/bitops.h: "hweight_long" 関数で: /usr/src/linux-headers-3.2.0-3-common/include/linux/bitops.h:49:41: 警告: 条件式 [-Wsign-compare] の符号付き型と符号なし型 /usr/src/linux-headers-3.2.0-3-common/arch/x86/include/asm/uaccess.h:575:0 に含まれるファイルで、 /usr/src/linux-headers-3.2.0-3-common/include/linux/poll.h:14で、 /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nv-linux.h:97で、 /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nv.c:13から: /usr/src/linux-headers-3.2.0-3-common/arch/x86/include/asm/uaccess_64.h: "copy_from_user" 関数で: /usr/src/linux-headers-3.2.0-3-common/arch/x86/include/asm/uaccess_64.h:53:6: 警告: 符号付き整数式と符号なし整数式の比較 [-Wsign - compare] ...同じ警告のため、多くのコンパイル出力が削除されます... ld -m elf_x86_64 -r -o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nvidia.o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel /NVIDIA-Linux-x86_64-304.22/kernel/nv.o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nv-acpi.o /tmp/selfgz10141/NVIDIA-Linux-x86 -chrdev.o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nv-cray.o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nv-g14/NVIDIA -Linux-x86_64-304.22/kernel/nv-i2c.o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nv-mempool.o /tmp/selfgz10141/NVI DIA-Linux-x86_64-304.22/kernel/nv-mlock.o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nv-mmap.o /tmp/selfgz10141/NVIDIA-Linux-x86 nv-p2p.o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nv-pat.o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nv-procf1 NVIDIA-Linux-x86_64-304.22/kernel/nv-usermap.o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nv-vm.o /tmp/selfgz10141/NVIDIA-2-Linux nv-vtophys.o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/os-agp.o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/os-interfaceo NVIDIA-Linux-x86_64-304.22/kernel/os-mtrr.o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/os-registry.o /tmp/selfgz10141/NVIDIA-2-3-8 os-smp.o /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/os-usermap.o (cat /dev/null; echo kernel//tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/nvidia.ko;) > /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/ker make -f /usr/src/linux-headers-3.2.0-3-common/scripts/Makefile.modpost スクリプト /mod/modpost -m -i /usr/src/linux-headers-3.2.0-3-amd64/Module.symvers -I /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/Module.symvers - /tmp/selfgz10141/NVIDIA-Linux-x86_64-304.22/kernel/Module.symvers -S -w -s NVIDIA:KBUILDを離れました。 nvidia.koのビルドに失敗しました! make[1]: *** [モジュール] エラー 1 make: *** [モジュール]エラー2 ->エラー。 エラー:NVIDIAカーネルモジュールを構築できません。 エラー:インストールに失敗しました。詳細については、「/var/log/nvidia-installer.log」ファイルを参照してください。 www.nvidia.comのLinuxドライバのダウンロードページにある追加情報ファイルで、インストールのトラブルシューティングに関する提案を見つけることができます。
アップデート#2:
提案によるとスターネーマー、再インストールしましたlinux-headers-3.2.0-3-amd64
。完了すると、DKMS が起動し、NVIDIA ドライバーのコンパイルを再試行します。ファイルの内容は次のとおりです/var/lib/dkms/nvidia/304.22/build/make.log
。
カーネル3.2.0-3-amd64(x86_64)用nvidia-304.22用DKMS make.log 2012年7月22日日曜日14:50:58 EST Linux 2.4カーネルを使用している場合は、次の点を確認してください。 以下に一致するカーネルソースを設定しました。 カーネルまたは正しいカーネルヘッダセットがインストールされました。 あなたのシステムから。 Linux 2.6カーネルを使用している場合は、次の点を確認してください。 カーネルと一致するカーネルソースを設定しました。 あなたのシステムにインストールされました。別途指定する場合 「KBUILD_OUTPUT」の出力ディレクトリを使用するか、 "O" KBUILD パラメーター、このパラメーターを指定する必要があります。 SYSOUT環境変数を含むディレクトリまたは 同等のnvidia-installerコマンドラインオプション。 カーネルがどこでどのように供給されるかに応じて(または カーネルヘッダファイル)がインストールされている場合は、指定する必要があります。 その場所はSYSSRC環境変数に対応します。 同等のnvidia-installerコマンドラインオプション。 ***ターゲットカーネルのバージョンを確認できません。 *** make: *** [select_makefile]エラー1
アップデート#3:
数日間のインターネット検索の終わりに、これがNVIDIAの間違いであるかどうか疑問になり始めました。その結果、そうではありません。 (testing
リポジトリから)Virtual Box 4.1をインストールしようとしましたが、偶然発見しました。これはまた:
#cat /var/lib/dkms/virtualbox/4.1.18/build/make.log カーネル 3.2.0-3-amd64(x86_64) を使用する virtualbox-4.1.18 用 DKMS make.log 2012年7月24日火曜日17:58:57 EST make: "/usr/src/linux-headers-3.2.0-3-amd64" ディレクトリを入力します。 LD /var/lib/dkms/virtualbox/4.1.18/build/build-in.o LD /var/lib/dkms/virtualbox/4.1.18/build/vboxdrv/built-in.o CC [M] /var/lib/dkms/virtualbox/4.1.18/build/vboxdrv/linux/SUPDrv-linux.o ...チラシ... CC[M] /var/lib/dkms/virtualbox/4.1.18/build/vboxpci/SUPR0IdcClientComponent.o CC[M] /var/lib/dkms/virtualbox/4.1.18/build/vboxpci/linux/SUPR0IdcClient-linux.o LD [M] /var/lib/dkms/virtualbox/4.1.18/build/vboxpci/vboxpci.o ビルディングブロック、ステップ2。 MODPOST 0モジュール make: "/usr/src/linux-headers-3.2.0-3-amd64" ディレクトリから出る
もちろん、もっと詳しくはありません(すでに言ったように、〜らしいリンカーの問題に似ていますが、まだはっきりしません。しかし、何も触れなかったと誓います。私はちょうどapt-get upgrade
-sを毎日します。それから何明らかにそれはうまくいかなかった。
アップデート#4:
私は以下に説明するように小さなモジュールを作ろうとしました。https://stackoverflow.com/questions/4715259/linux-modpost-does-not-build-anything。実際に私はまだ見ているMODPOST 0 modules
。V=1
Makefileに入れたときの出力は次のとおりです。
#作る make -C /lib/modules/3.2.0-3-amd64/build M=/home/dimi/code/hello V=1 モジュール make[1]: `/usr/src/linux-headers-3.2.0-3-amd64' ディレクトリを入力します。 make -C /usr/src/linux-headers-3.2.0-3-amd64\ KBUILD_SRC=/usr/src/linux-headers-3.2.0-3-common \ KBUILD_EXTMOD="/home/dimi/code/hello" -f /usr/src/linux-headers-3.2.0-3-common/Makefile \ 基準寸法 test -e include/ generate/autoconf.h -a -e include/config/auto.conf || エコ; echo "エラー:誤ったカーネル構成。"; echo "include/generated/autoconf.h または include/config/auto.conf がありません。";\ echo "この問題を解決するには、カーネル src で 'make oldconfig && make prepare' を実行してください。"; エコ; /空/偽) mkdir -p /home/dimi/code/hello/.tmp_versions rm -f /home/dimi/code/hello/.tmp_versions/* make -f /usr/src/linux-headers-3.2.0-3-common/scripts/Makefile.build obj=/home/dimi/code/hello gcc-4.6 -Wp, -MD, /home/dimi/code/hello/.hello.od -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/4.6/include -I/usr/src/linux -headers-3.2.0-3-common/arch/x86/include -Iarch/x86/include/ 生成 -Iinclude -I/usr/src/linux-headers-3.2.0-3-common/include -include /usr /src/linux-headers-3.2.0-3-common/include/linux/kconfig.h -I/home/dimi/code/hello -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict -aliasing -fno-common -Werror-暗黙的な関数宣言-Wno-format-security -fno-delete-null-pointer-checks -Os -m64 -mtune=generic -mno-red-zone -mcmodel=kernel -funit - at -a-time -maccumulate-outgoing-args -fstack-protector -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -pipe -Wno no - sse -mno-mmx -mno-sse2 -mno-3dnow -Wframe-larger-than=2048 -Wno-unused-but-set-variable -fomit-frame-pointer -g -Wdeclaration-after-statement -Wno-pointer - sign -fno-strict-overflow -fconserve-stack -DCC_HAVE_ASM_GOTO -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(hello)" -D"KBUILD_MODNAME=KBUILD_STR(hello)" -c -ホーム /dimi/code/hello/.tmp_hello.o /home/dimi/code/hello/hello.c (cat /dev/null; echo kernel//home/dimi/code/hello/hello.ko;) > /home/dimi/code/hello/modules.order make -f /usr/src/linux-headers-3.2.0-3-common/scripts/Makefile.modpost スクリプト /mod/modpost -m -i /usr/src/linux-headers-3.2.0-3-amd64/Module.symvers -I /home/dimi/code/hello/Module.symvers -o /home/dimi/コード/hello/Module.symvers -S -w -c -s make[1]: `/usr/src/linux-headers-3.2.0-3-amd64' ディレクトリを終了します。
削除すると、次のように表示されますV=1
。
#作る make -C /lib/modules/3.2.0-3-amd64/build M=/home/dimi/code/hello モジュール make[1]: `/usr/src/linux-headers-3.2.0-3-amd64' ディレクトリを入力します。 CC[M] /home/dimi/code/hello/hello.o ビルディングブロック、ステップ2。 MODPOST 0モジュール make[1]: `/usr/src/linux-headers-3.2.0-3-amd64' ディレクトリを終了します。
答え1
解決しました!
とても簡単です。/root/.bashrc
以下の内容があります。
export GREP_OPTIONS='--color=always'
次に変更してください。
export GREP_OPTIONS='--color=never'
...そしてルートシェルを再起動します(確かに; このステップは省略しないでください)。すべてが再び機能し始めました。 NVIDIAとVirtualBoxカーネルモジュールの両方が最初の試みで構築されました。本当に嬉しいです! :-)
しかし、もう一度カーネルビルドツールに少しがっかりしました。彼らはよりよく認識し、以前の値を--color=never
使用するたびに渡す必要がありますgrep
。あるいは、以前の値を保存し、GREP_OPTIONS
ビルドプロセスが進行中に上書きして復元する必要があります。
この問題に対する私の一週間の壮大な戦いが、コミュニティとカーネルビルドツール開発者の両方にとって貴重なものになることを願っています。
私と一緒に滞在しながら助けを与えようと努力してくださった方々に心から感謝します。
(すべてのクレジットはここにあります:http://forums.gentoo.org/viewtopic-p-4156366.html#4156366)
答え2
dkmsを削除して再インストールしましたか?
これを使用すると、apt-get purge dkms
それに依存するすべてのパッケージも消去されるため、後で再インストールする必要があります。
依存パッケージも消去したくない場合は、dpkgを使用できます。
dpkg --purge --force-depends dkms
通常の方法で再インストールしてください。apt-get install dkms
FWIW、ここにカーネルlinux-image-3.2.0-3-amd64とnvidia-kernel-dkms 302.17-3と関連パッケージがインストールされている2つのシステム(debian sidを実行)があります。 dkmsモジュールのコンパイルに問題はありません。 3番目のコンピュータ(私のデフォルトのデスクトップ)はまだnvidia-kernel-dkms 295.53-1を実行していますが、主にログアウトしたくないからです。
ちなみに、適性を使って様々なNVIDIAパッケージを整理して再インストールすると言われました。パッケージ名にnvidiaを含まない複数のnvidiaパッケージがあります。以下は、nvidia pkgsを保存/保存解除するために考えたソリューションです。 (私は通常、現在のXセッションからログアウトする意向/ログアウトが可能なときにのみnvidia pkgsをアップグレードしたいと思います...そして新しいnvidiaバージョンで不愉快な驚きを経験した後、私は最も重要でないコンピュータで最初にテストするのが好きです):
(注:これを実行するにはdlocateパッケージをインストールする必要があります)
$猫/usr/local/sbin/hold-nvidia.sh #! /bin/bash PKGS=$(dlocate -l nvidia cuda vdpau | awk '/^[hi]i/ {print $2}' | sed -e 's/:.*//') エコ dpkg-hold $PKGS dpkg -$PKGS を維持
dpkg-unhold
アーカイブされていないパッケージの場合、ほぼ同じパッケージ(代わりに実行中dpkg-hold
)があるため、それを実行またはdpkg --purge
交換apt-get purge
するのは簡単ではありません。
答え3
これは悪いです:
PATH: /usr/local/rvm/gems/ruby-1.9.3-p194/bin:\
/usr/local/rvm/gems/ruby-1.9.3-p194@global/bin:\
/usr/local/rvm/rubies/ruby-1.9.3-p194/bin:\
/usr/local/rvm/bin:\
/usr/local/sbin:\
/usr/local/bin:\
/usr/sbin:\
/usr/bin:\
/sbin:\
/bin
私はこのディレクトリの少なくともいくつかです$PATH
編集する~前に/bin
そして/sbin
- 特にruby
つまり、出力をカラー化する汎用シェルアプリケーションラッパースクリプトがあります。たぶん、次の設定を適用した可能性があります。/etc/skel
この場合でも/bin/env -i grep
あなたを自分自身から救うこともできました。
これで人々がコンパイルします。chroot.
PS 私がこんなに厳しく選んだ理由は、数年前も同じ教訓を同じように学ばなければならなかったからです。おそらくあなたは必要ではないでしょう=never
もしあなたの$PATH
とてもきれいです。または、次のものを使用できます。--color=auto
この場合は、次の場合にのみターミナルエスケープを使用してください。grep
~のstdout
端末です。つまり、端末ではありません。|pipe
到着gcc.
あるいは、より良い方法は、柔軟でないシェルを設定しないことです。alias
そして:
alias grep=grep\ --color=anything
使用できるgrep
~の$ENV
環境:
GREP_COLOR=auto
答え4
私はNVIDIAドライバと一緒にDebian Wheezy(32ビット)を実行しています。最近、DKMS 320.17バージョンも試してみましたが、「公式」NVIDIAバージョン(295.59)に戻しました。これはインストールに失敗したためではなく、プログラムが含まれておらず、nvidia-settings
HDTV(セカンダリモニタ)でオーバースキャンをリセットする必要があるためです。 )。
/usr/bin/gcc
しかし、古いバージョンを実行するためにgcc-4.6にリンクする必要はありません。CC=gcc-4.6
インストールされているすべてのnvidiaエントリを消去した後、「公式」295.59インストールを実行する前にこれを行いましたapt-get
。
まだ息がするテストバージョンなので、64ビットバージョンで正しくテストされていないバグが発生する可能性があります。前述したように、32ビットアップグレードには機能不足以外には問題はありませんでした。システムに問題がないと確信している場合は、記録されたエラーレポートを確認できます。
私の提案は、295.59の「公式」バージョンに戻り(リンクを使用するか、CCを定義して正しいバージョンを使用gcc
)、nvidia-kernel-dkmsモジュールが更新されるまで(またはWheezyが次回リリースされるまで)待つことです。安定)。
もちろん確認してみるとここコードは次のとおりです。無料ではありませんとにかく、「公式」バイナリの試用版を使用することが可能なので、問題の可能性だけが高まります。