web-dev-qa-db-ja.com

カーネルコンパイルエラー中にstatできません

Ubuntu 14.04でカーネルバージョン4.10.1を説明されている方法でコンパイルしようとしています ここ

4.9.xバージョンまで機能しました。

4.10.xがリリースされたとき、次のエラーが発生し続けます。

install -p    -o root -g root  -m  644 CREDITS /usr/src/linux-4.10.1/debian/linux-headers-4.10.1/usr/share/doc/linux-headers-4.10.1/
install -p    -o root -g root  -m  644 MAINTAINERS /usr/src/linux-4.10.1/debian/linux-headers-4.10.1/usr/share/doc/linux-headers-4.10.1/
install -p    -o root -g root  -m  644 REPORTING-BUGS /usr/src/linux-4.10.1/debian/linux-headers-4.10.1/usr/share/doc/linux-headers-4.10.1/
install: cannot stat ‘REPORTING-BUGS’: No such file or directory
make[1]: *** [debian/stamp/install/linux-headers-4.10.1] Error 1
make[1]: Leaving directory `/usr/src/linux-4.10.1'
make: *** [kernel_headers] Error 2
2
Immolator

その理由は、カーネル開発者がカーネルソースからREPORTING-BUGSファイルを削除し、カーネルのコンパイルに使用したUbuntuツールがファイルがそこにあることを期待しているためです。

どうやらほとんどのカーネル開発者はmake-kpkgを使用していないので、make-kpkgを使用してkernel-headersパッケージの構築を壊したという事実に気づかなかったか気にしませんでした。 make-kpkgは、結局のところ、特定のLinuxディストリビューションのツールにすぎず、カーネル開発者は、ソースツリーにそのパスを持つドキュメントファイルを常に持つことを約束したことはないと感じるかもしれません。

回避策として、4.9カーネルソースからツリーにファイルをコピーしてコンパイルすることができます。

3
bluestraggler