reTerminal 用 Buildroot
この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues
reTerminal 用 Buildroot
はじめに
Buildroot は、クロスコンパイルを使用して、組み込みシステム用の完全な Linux システムを構築するプロセスを簡素化し、自動化する使いやすいツールです。
Buildroot は、ターゲット用のクロスコンパイルツールチェーン、ルートファイルシステム、Linux カーネルイメージ、およびブートローダーを生成することができます。これらのオプションを任意の組み合わせで独立して使用することも可能です(例えば、既存のクロスコンパイルツールチェーンを使用し、Buildroot でルートファイルシステムのみを構築することができます)。
Buildroot はシンプルな構造を持ち、理解しやすく拡張も容易です。また、よく知られた Makefile 言語にのみ依存しています。Buildroot はオープンソースプロジェクトであり、多くの開発者が日々貢献しています。
以下のガイドに従うことで、Buildroot を使用して独自の reTerminal システムイメージを構築することができます。それでは始めましょう!
Buildroot ソースコードのコンパイル
ローカルマシンでの手動コンパイル
ここでは、Buildroot を使用して reTerminal 用のシステムイメージを手動でコンパイルする方法を説明します。
注意: このガイドは、Ubuntu 20.04 をインストールしたホスト PC でテストした後に作成されました。ただし、他の Linux システムでも動作します。
- ステップ 1. ホスト PC に開発環境を準備し、以下のパッケージ(git、gcc、make)をインストールします。
sudo apt update
sudo apt install git
sudo apt install build-essential
注意: 上記のパッケージがすでにインストールされている場合は、このステップをスキップできます。
- ステップ 2. 以下の GitHub リポジトリをクローンします。
git clone --depth=1 https://github.com/Seeed-Studio/seeed-linux-buildroot.git -b master
- ステップ 3. seeed-linux-buildroot ディレクトリに移動します。
cd seeed-linux-buildroot
デフォルト設定で reTerminal をコンパイル
以下のコマンドを入力して、デフォルトの reTerminal 設定でコンパイルを開始します。
make reTerminal_64_defconfig
make
独自の設定で reTerminal をコンパイル
独自の設定でコンパイルするために必要なパッケージをインストールするには、以下のコマンドを入力します。
sudo apt install libncurses-dev
- ステップ 5. 以下のコマンドを入力して、Buildroot 設定ウィンドウを開きます。
make menuconfig
この設定ウィンドウを使用して、利用可能なオプションをナビゲートし、イメージをカスタマイズすることができます。また、このウィンドウで変更を加えずに 保存 および 終了 をクリックすると、デフォルトの reTerminal 設定が読み込まれます。
コンパイル済みイメージの確認
コンパイルが成功したら、seeed-linux-buildroot/output/images
に移動し、sdcard.img という名前のコンパイル済みイメージを見つけることができます。
既にコンパイル済みのイメージをダウンロード
Buildroot を使用して既にコンパイルされた reTerminal システムイメージをダウンロードしたい場合は、以下の手順に進んでください。
ステップ 1. このリンク を開き、seeed-linux-buildroot GitHub リポジトリの Actions ページにアクセスします。
ステップ 2. 最新の Seeed reTerminal buildroot ワークフローをクリックします。
- ステップ 3. Artifacts の下にある buildroot deploy をクリックして、イメージのダウンロードを開始します。
注意: イメージをダウンロードした後、イメージを解凍して sdcard.img ファイルを取得してください。
reTerminal にイメージを書き込む
次に、reTerminal の CM4 の eMMC にイメージを書き込む手順に進みます。
この Wiki の手順に従い、以下のステップに注意してください:
注意: Raspberry Pi Imager を開いたら、CHOOSE OS をクリックし、Use custom を選択して、ダウンロードした sdcard.img ファイルを選択してください。
reTerminal の初回起動
システムイメージを reTerminal に書き込んだ後、reTerminal の電源を入れます。ここで、reTerminal の LCD にカーネルログが表示され、最後に Qt を使用して作成されたデモアプリケーションが開きます。
デフォルトのシステムイメージの起動時間は約 30 秒です。
Buildroot イメージの分析
前述のように、Buildroot は非常に強力なツールであり、サードパーティのライブラリやツールに依存して、必要なものを迅速に構築できます。Buildroot のコンパイル時間、依存関係、コンパイルによって消費されるリソースのサイズなどを理解したい場合、コードを通じて確認するのは非常に不便です。しかし、Buildroot はこれらを分析するための視覚的なツールを提供しており、いくつかの簡単なコマンドを使用するだけで利用できます。
以下のパッケージをインストールすることから始めます。
sudo apt install python3-matplotlib python3-numpy
依存関係図の生成
Buildroot の役割の 1 つは、パッケージ間の依存関係を理解し、それらが正しい順序でビルドされるようにすることです。これらの依存関係は時に複雑であり、特定のシステムにおいて、なぜあるパッケージが Buildroot によって導入され、正常にビルドされたのかを理解するのは容易ではありません。依存関係を理解し、組み込み Linux システムにおけるさまざまなコンポーネントの役割をよりよく理解するために、Buildroot は依存関係図(PDF 形式)を生成することができます。
- ステップ 1. 以下のパッケージをインストールします。
sudo apt install graphviz
- ステップ 2. 依存関係図を生成します。
make graph-depends
上記のコマンドを実行すると、依存関係図が seeed-linux-buildroot > output > graphs
に以下の形式で生成されます:
- graph-depends.pdf
- graph-depends.dot
注意: 上記の画像をクリックすると拡大版を表示できます。
コンパイルによって消費されるリソースのサイズ分析の生成
Buildroot は、コンパイルによって消費されるリソースのサイズ分析を生成することができます。
以下のコマンドを入力します。
make graph-size
上記のコマンドを実行すると、視覚的な分析ファイルが seeed-linux-buildroot > output > graphs
に以下の形式で生成されます:
- graph-size.pdf
- file-size-stats.csv
- package-size-stats.csv
注意: 上記の画像をクリックすると拡大版を表示できます。
Buildroot イメージのテスト
上記の Buildroot イメージを reTerminal でテストするには、reTerminal ハードウェアとインターフェース使用法 wiki を訪問し、記載されている手順を参照してください。
リソース
- [Webページ] Buildroot ドキュメント
- [GitHub] seeed-linux-buildroot
技術サポートと製品ディスカッション
弊社製品をお選びいただきありがとうございます!製品の使用体験がスムーズになるよう、さまざまなサポートを提供しています。異なる好みやニーズに対応するため、いくつかのコミュニケーションチャネルをご用意しています。