多くの初心者は、レシピ、パッケージ、アプリケーションという用語を混同しています。アプリケーションは、単に実行して何かを行うプログラムです。これは、hello world の例のような単一のバイナリ実行可能イメージである場合もあれば、複数のバイナリ実行可能ファイルと、Apache などの共有ライブラリ、モジュール、構成ファイルのコレクションで構成される場合もあります。
Linux では、「パッケージ」という用語には独自の特別な意味があります。パッケージは、必要なものを含む「関連ファイルのコレクション」と考えることができます。いくつかの一般的なパッケージ形式があり、最も一般的なのは .deb (Debian) と .rpm (Redhat Package Manager) です。組み込み開発者に人気のあるもう 1 つの形式は .ipk です。これは、基本的に組み込みに適した軽量のパッケージ形式です。Linux に詳しい人なら誰でも、パッケージを操作したことがあるはずです。Debian ベースのディストリビューションは、システムからパッケージを追加および削除するために apt-get およびその他のユーティリティを使用します。Fedora などは、yum や rpm ユーティリティを使用します。.ipk を使用する組み込みシステムでは、パッケージの管理に opkg* を使用します。
openembedded および Yocto Project の用語での「レシピ」は、.bb で終わる特殊なファイルであり、何か (通常はイメージ、アプリケーション プログラム、または共有ライブラリ) をビルドする方法を説明するメタデータが含まれています。デフォルトでは、レシピは複数のパッケージを生成しますが、さらに多くの (またはまったく生成しないこともあります)。たとえば、典型的なレシピは、バイナリ パッケージ、doc パッケージ、ヘッダーと共有ライブラリ (該当する場合) を含む -dev パッケージ、および -dbg をビルドします。デバッグ シンボルを含むバイナリを含むパッケージ。
openembedded または Yocto Project でアプリケーションをビルドすると、アプリケーションを含むパッケージが自動的にビルドされます。そのパッケージをどのように使用するかはあなた次第です。