arm64用Ubuntuを構築する方法は? ( `debian / rules`コマンドにARCHおよびCROSS_COMPILE変数を割り当てる方法)

arm64用Ubuntuを構築する方法は? ( `debian / rules`コマンドにARCHおよびCROSS_COMPILE変数を割り当てる方法)

誰かが私にこの質問をするところがここが正しいと提案し、他の質問で見ても同じようだ。ここで答えを得ることを願っています。
(しかし、私がUbuntuを構築したいのは、qemuを使用して仮想マシンでUbuntuのインストールをデバッグするためにUbuntuカーネルにいくつかのデバッグ情報を追加するためです)。マッピングがあり、multi2simに基づく複雑な.soファイルからロードして使用できる単純なペリフェラルモデルがあります。

経由でUbuntuソースをダウンロードしましたgit clone git://kernel.ubuntu.com/ubuntu/ubuntu-focal.git。付属のArmビルドプロセス
に応じて、次のことを行いました。https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel

LANG=C fakeroot debian/rules clean  
LANG=C fakeroot debian/rules binary-headers binary-generic binary-perarch  

コマンドの前にエクスポート、ARCH=arm64 CROSS_COMPILE=aarch64-none-elf エクスポート
ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu-、またはコマンドの後にエクスポートしましたが、エラーが発生しました。エラーメッセージの1つはYou are building kernel with non-retpoline compiler, please update your compiler設定(https://askubuntu.com/questions/1145943/building-kernel-with-non-retpoline-compiler)。だから私は努力しました

LANG=C fakeroot debian/rules editconfigs

Do you want to edit config: amd64/config.flavour.generic?しかし、arm64アーキテクチャに対していつ実行する必要があるのか​​を尋ねます。 ARCHおよびCROSS_COMPILEオプションを提供しようとしましたが、amd64設定を変更するかどうかを常に尋ねます。fakeroot debian/rulesビルドメソッドにARCHおよびCROSS_COMPILEオプションをどのように提供しますか?

ps。私のツールチェーン情報です。

aarch64-linux-gnu-gcc (Linaro GCC 7.5-2019.12) 7.5.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 

または

aarch64-none-elf-gcc (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 9.2.1 20191025
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

ベストアンサー1

に基づいてARMクロスコンパイル命令、以下をエクスポートする必要があります。

export $(dpkg-architecture -aarm64)
export CROSS_COMPILE=aarch64-linux-gnu-

しかし、それは私に尋ねた。Do you want to edit config: amd64/config.flavour.generic?

arm64「いいえ」と答えると、最終的に設定を編集するかどうかを尋ねられます。

必要に応じて設定が設定されたら

fakeroot debian/rules binary-headers binary-generic binary-perarch

パッケージはaarch64

おすすめ記事