エラーメッセージ:disagrees about version of symbol module_解決策
1291 ワード
マシン:ubuntu 12
質問説明:モジュールのコンパイル中にエラーが発生しました:-1 Invalid module format
コマンド:
発見原因は、disagrees about version of symbol module_layout
解決方法:
1.現在インストールされているカーネルバージョンを確認する
2.Makefileで指定したkernelソースパスを確認し、正しいパスを変更します.バージョン番号が一致することを保証します.
2.1.現在インストールされているカーネルのソースコードが/usr/src/ディレクトリにない場合は、再コンパイルをダウンロードします.
2.1.1 ubuntuでのコマンドの実行:
centosとret hatの下でコマンドを実行します.
2.1.2上記のコマンドが完了すると、/usr/srcディレクトリの下にインストールされたソースコードが見つかります.ubuntuにとってはソースコードをダウンロードしているのでコンパイルしなければなりません.
ソースディレクトリでコマンドを実行します(コンパイルが完了するまで約30分かかります):
3.インストールを再コンパイルします.
理由:Makefileにkernelソースコードを設定するパスが間違っていて、現在のカーネルバージョンと一致していないため、バージョン検証が失敗し、インストールできません.
質問説明:モジュールのコンパイル中にエラーが発生しました:-1 Invalid module format
コマンド:
dmesg
発見原因は、disagrees about version of symbol module_layout
解決方法:
1.現在インストールされているカーネルバージョンを確認する
uname -r
2.Makefileで指定したkernelソースパスを確認し、正しいパスを変更します.バージョン番号が一致することを保証します.
LINUX_KERNEL_PATH:=/usr/src/kernels/2.6.32-358.2.1.el6.x86_64
2.1.現在インストールされているカーネルのソースコードが/usr/src/ディレクトリにない場合は、再コンパイルをダウンロードします.
2.1.1 ubuntuでのコマンドの実行:
1 sudo apt-get install linux-source
centosとret hatの下でコマンドを実行します.
1 yum install kernel-devel
2.1.2上記のコマンドが完了すると、/usr/srcディレクトリの下にインストールされたソースコードが見つかります.ubuntuにとってはソースコードをダウンロードしているのでコンパイルしなければなりません.
ソースディレクトリでコマンドを実行します(コンパイルが完了するまで約30分かかります):
make
3.インストールを再コンパイルします.
理由:Makefileにkernelソースコードを設定するパスが間違っていて、現在のカーネルバージョンと一致していないため、バージョン検証が失敗し、インストールできません.