2

私の目標は、Debian(スクイーズ)ユーザーランドで新しいカーネルLinux3.4を実行することです。

DebianのKernelFaqは、kernel.orgから最新の元のカーネルを取得し、それを手動で構成およびコンパイルすると単純に述べています。

ただし、glibcのドキュメントには、次のように記載されています。

GNU Cライブラリは、[コンパイル中に]使用されるカーネルヘッダーよりも古いカーネルで問題なく実行されます。逆の方法(古いカーネルヘッダーを使用してGNU Cライブラリをコンパイルし、最近のカーネルで実行する)は、必ずしも期待どおりに機能するとは限りません。

カーネルAPIは2.6.32から3.4までかなり安定しているので、3.4カーネルをコンパイルするだけでおそらく逃げることができます。しかし、これでも潜在的な問題が残るのではないかと思います。

Linux 3.4(またはそれ以降)のヘッダーに対してeglibc 2.11.3-4を再コンパイルするためにこれを行うより正しい方法はありますか?

4

1 に答える 1

0

これでも潜在的な問題が残るのではないかと思います。

glibcwikiの次の段落を引用していません。

...必ずしも期待どおりに機能するとは限りません。たとえば、古いカーネルヘッダーを使用してGNU Cライブラリをコンパイルした場合、新しいカーネル機能を使用することはできません。

つまり、既存のglibcビルド(およびその他のユーザーランド)は新しいカーネルで正常に機能しますが、glibcはカーネルが提供するすべての最新機能を使用しない場合があります。

于 2013-01-10T06:38:37.280 に答える