ホームページ  >  記事  >  システムチュートリアル  >  Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

WBOY
WBOY転載
2024-02-10 22:12:14762ブラウズ

あなたが組み込み開発者であれば、次の質問に遭遇するかもしれません: ハードウェア プラットフォームに適した Linux システムを作成するにはどうすればよいですか? Linux システムの機能と外観をカスタマイズするにはどうすればよいですか? Linux システムのセキュリティと安定性を確保するにはどうすればよいですか?これらの問題は、Yocto プロジェクトを使用することで解決できます。 Yocto プロジェクトは、ハードウェア アーキテクチャに関係なくカスタム Linux システムの作成を支援するオープンソースの共同プロジェクトです。 Yocto プロジェクトは、独自の Linux ディストリビューションを最初から構築したり、既存の Linux ディストリビューションに基づいて変更および最適化したりできる、柔軟なツールとリソースのセットを提供します。この記事では、Yocto を使用して Ubuntu 上で最小限の Linux ディストリビューションを作成する方法と、Yocto の基本概念とワークフローを紹介します。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

開発マシンの基本条件

最小 4 ~ 6 GB RAM

Ubuntu システムの最新バージョン (この記事では 16.04 LTS を使用します)

残りのディスク容量は少なくとも 60 ~ 80 GB です

Linux ディストリビューションを作成する前に、次のパッケージをインストールします

最新の Yocto (Poky はその最小開発環境) の安定したブランチをダウンロードします

リーリー Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

以下に示すように、開発環境にインストールするソフトウェア パッケージのサイズは 1GB 近くあります。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

このチュートリアルでは、poky の morty 安定版ブランチがシステム上に複製されます。

リーリー Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

poky ディレクトリに入り、次のコマンドを実行して、Yocto 開発環境のいくつかの環境変数を設定 (設定/エクスポート) します。

リーリー

以下に示すように、オープン エンベデッド (OE) ビルド環境スクリプトを実行すると、ターミナル内のパスは、リリース バージョンのその後の構成と構築のために自動的にビルド ディレクトリに切り替わります。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

上のスクリーンショットは、conf ディレクトリに作成されたファイル local.conf を示しています。これは、SDK のターゲット マシンの詳細とターゲット アーキテクチャを設定するために Yocto によって使用される構成ファイルです。

以下に示すように、ここで設定したターゲット マシンは qemux86-64 です。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

以下のスクリーンショットに示すように、local.conf 内の次のパラメータのコメントを解除します。

リーリー Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築するrree Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築するrree Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築するrree Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

以下に示すように、Yocto ベースの Linux の local.conf に空のパスワードとそれに続くいくつかのパラメーターを設定します。そうしないと、ユーザーは新しいリリースにログインできなくなります。

リーリー Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

トースターなどの Linux OS の作成にグラフィカル ツールを使用する予定はありません (hob はサポートされなくなりました)。

Yocto のコンパイルとビルドのプロセス

# 次に、次の bitbake ツール コマンドを実行して、選択したターゲット マシン用のソフトウェア パッケージのダウンロードとコンパイルを開始します。

リーリー Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

上記のコマンドは、root ユーザーを使用せず、通常の Linux ユーザーで実行することが非常に重要です。以下のスクリーンショットに示すように、root ユーザーで bitbake コマンドを実行すると、以下のエラーが発生します。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する環境変数 (oe-init-build-env) をエクスポートするスクリプトを再度実行し、同じコマンドを再実行してダウンロードとコンパイルのプロセスを開始します。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

以下に示すように、スクリプト コンポーネントを構築する最初のステップは、構成 (レシピ) を解析することです。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

以下のスクリーンショットは、ビルド スクリプトの解析プロセスを示しています。また、新しい yocto ベースのディストリビューションを構築するために使用されるビルド システムの詳細も示します。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

SDK と必要なライブラリをダウンロードしたら、次のステップはソフトウェア パッケージをダウンロードしてコンパイルすることです。以下のスクリーンショットは、新しいディストリビューションを構築するために実行されるタスクを示しています。まず必要なパッケージをダウンロードしてから、新しい Linux ディストリビューション用にコンパイルする必要があるため、この手順には 2 ~ 3 時間かかります。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

以下のスクリーンショットは、タスク リストの完了を示しています。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

ターゲット マシン タイプ qemux86-64 用にコンパイルされた新しいイメージは、build/tmp/deploy/images/qemux86-64:

にあります。 Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

以下に示すように、上記のコマンドを Putty 上で実行するとエラーが発生します。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

Ubuntu プラットフォームで rdp 経由で上記のコマンドを再度実行します。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

新しい Yocto ベースの Linux ディストリビューションを実行する qemu の新しい画面を開きます。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

以下は、新しいリリースのログイン インターフェイスを示し、使用されている yocto プロジェクトのバージョン番号も表示します。デフォルトのユーザー名は root で、パスワードは空白です。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

最後に、root ユーザー名と空のパスワードを使用して、新しいリリースにログインします。以下のスクリーンショットに示すように、基本的なコマンド (data、ifconfig、および uname) は、この最小バージョンの Linux で実行されます。

Yocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築する

この記事の目的は、Yocto を使用して新しい Linux ディストリビューションを作成するプロセスを理解することです。

この記事を通じて、Yocto を使用して Ubuntu 上で最小限の Linux ディストリビューションを作成する方法と、Yocto の基本概念とワークフローを学びました。 Yocto を使用すると、ニーズや好みに合わせて組み込みデバイスやその他のシナリオに適した Linux システムをカスタマイズできます。もちろん、これは Yocto プロジェクトが提供する多くの機能とオプションの一部にすぎません。Yocto プロジェクトと組み込み Linux 開発についてさらに詳しく知りたい場合は、引き続き調査と実践を続ける必要があります。この記事があなたの学習や仕事に役立つことを願っています。また、あなたが使用したり発見したその他の実用的な Yocto スキルを共有することも歓迎します。

以上がYocto 入門チュートリアル: Ubuntu 上でカスタマイズされた Linux システムを構築するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlxlinux.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。