
apt
Ubuntuリポジトリからパッケージをダウンロードするときに使用します。パッケージのビルド時に使用されたカーネルのバージョンをどのように確認できますか?
いつ重要ですか(ビルドサーバーのカーネルバージョンとパッケージがインストールされているマシンのカーネルバージョン)?
答え1
ほとんど重要ではありません。ビルドシステムが本当に心配な場合は、カーネルを考慮する前に、コンパイラ、ライブラリ、ヘッダーのバージョンを考慮する必要があります。
カーネルバージョンがコード自体によって「記憶」されるかどうかは、コード自体によって異なります。一部のパッケージは、コンパイラのバージョンを表す文字列を格納します。これがより重要だからです。実際、カーネル自体がこれを行います(下記参照/proc/version
)。
答え2
カーネルバージョンを知っているかわからないことの重要性については、上記のコメントと回答ですでに完全に説明されているので、追加しないでください。
ただし、上記の回答に対するご意見に対する回答から
グラフィックドライバ(カーネルビルドとランタイム環境)はどうですか?
注意すべきはgcc
コンパイルしたカーネルバージョンなので、グラフィックドライバ(特にNvidia)と同じバージョンを使用する必要があります。
cat
このファイルが必要です/proc/version
。このファイルは、現在実行中のカーネルのバージョンと、gcc
カーネルの構築に使用されるバージョンを識別します。
$ cat /proc/version
Linux version 3.2.0-23-generic (buildd@crested) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu4) ) #36-Ubuntu SMP Tue Apr 10 20:39:51 UTC 2012
たとえば、gcc-4.6 を使用して NVIDIA モジュールのビルドを開始します。
$ export CC=/usr/bin/gcc-4.6
$ bash NVIDIA-Linux-***.run