Linux の基礎とアプリケーション開発シリーズ 4: ARM-GCC とクロス コンパイル

3 つの質問:

ARM-GCC とは何ですか?GCC とどのような関係がありますか?

コンパイル ツールチェーンとターゲット プログラムは同じアーキテクチャ プラットフォーム上で実行されます。これはローカル コンパイルと呼ばれます。

コンパイル ツールチェーンとターゲット プログラムは異なるアーキテクチャ プラットフォームで実行されます。これはクロスコンパイルと呼ばれます。

ARM-GCC は、 GCC コンパイル ツール チェーンのブランチであるarm プラットフォーム用のコンパイラです。

仮想マシン

開発ボード

ARM-GCC はさらにどのように分類されますか?

2 番目の項目: Linux なし

3 番目の項目: gnu: glibc eabi: アプリケーション バイナリ標準インターフェイス hf: ハード浮動小数点プラットフォームのサポート

ARM-GCC をインストールするにはどうすればよいですか?

apt インストール gcc

異なるプラットフォームでインストール コマンドを使用すると、異なるプラットフォームの gcc ツール コンパイル チェーンがインストールされます。

ubuntuにarm-gccをインストールする

apt インストール gcc-arm-linux-gnueabihf

リナロ

2 つのケース:

ここでは、開発ボードが ubuntn の共有フォルダーを認識していることがわかります。

 

次に、ubuntu 共有フォルダーを開発ボードにマウントします。

 

 

ARMアーキテクチャ上で x86_64 アーキテクチャを実行するプログラム

 cp 仮想マシンの hello 実行可能ファイルを共有フォルダーにコピーします

開発ボードでスーパーユーザーに切り替えてコンパイルします

 

 実行可能ファイル形式が異なるため、異なるプラットフォーム上の実行可能プログラムを混在させることができないことを示す、実行可能形式エラーが見つかりました。

ARM アーキテクチャ上でクロスコンパイルされたプログラムを実行する

開発ボードは正常にコンパイルできます

 

おすすめ

転載: blog.csdn.net/qq_51519091/article/details/132133639