デバッグ目的で環境を再作成しようとしています。 Fedora 20固有のカーネルバージョン(この場合は3.17.7-200.fc20.x86_64)が必要です。
私はtarballでバニラカーネル(3.17.7)を手動でコンパイルしました。
cd /usr/src/kernels/linux-3.17.7
make oldconfig
make
make install
make module_install
Fedoraのソースコードで同じ作業をしたいのですが、正確なソースコードを入手できず、常識が少し不足しているようです。
yumインストールカーネルを使用してFedoraをインストールしましたが、デフォルトバージョンをコンパイルした後(.configを編集する必要がある)後にすべてのソースを削除し、initrm、systemmap、およびvmlinuzだけを残しました。
私は以前試しました:
yum install kernel-devel kernel-headers
特定のF20バージョンの場合。
しかし、私が行くとき
/usr/src/kernel/<my_desired_kernel_version>/
作成しましたが、常にファイルの欠落エラーが発生します。ディレクトリとファイルを詳しく調べたところ、Fedoraカーネルソースがあるディレクトリには、バニラカーネルディレクトリに比べて多くのファイルが欠落していることがわかりました。これはfedora kernel-develsファイルが単にパッチであることを意味しますか?
私の究極の目標は、.configファイルをいくつか編集して特定のFedoraカーネルをコンパイルすることです。また、私が何を間違っているかについての基本的な背景知識が欲しい。挨拶
答え1
kernel-develパッケージには、カーネルソースコード全体ではなく、カーネル用の追加モジュールを構築するために必要なものだけが含まれています。カーネル全体を構築するには、ソースrpmを取得する必要があります。あなたが言ったように、デフォルトのカーネルを使うことができます。または独自のカーネルrpmを構築するには、次を参照してください。このガイドライン
答え2
FedoraのビルドシステムであるKojiから特定のソースRPMを入手できます。この場合の位置https://kojipkgs.fedoraproject.org/packages/kernel/3.17.7/200.fc20/。 (見つける方法はいくつかありますが、この場合は「kernel-3.17.7-200.fc20.x86_64 koji」と検索しました。)
ソースrpmのインストール(root以外のユーザーとして) - インストールして実行して、rpmdev-setuptree
ホームディレクトリに必要な環境を作成します(必要な場合)。その後、ソースコードとパッチを直接変更するか、追加のパッチでファイルを変更kernel.spec
して必要な設定を変更できます。