インストールコマンドの${D}変数

インストールコマンドの${D}変数

いくつかのyoctレシピで次のインストールコマンドを見ました。

install -d ${D}${libdir}

installコマンドとその目的を知っていますが、$ {D}変数は通常レシピで定義されていないため、その目的を理解できません。誰かがこのシェル変数の目的を説明できますか?

ベストアンサー1

この${D}変数を使用すると、ビルドしているソフトウェアを実際のターゲットではなくディレクトリにインストールできます。たとえば、ソフトウェアをとして構成できますが、これはターゲットデバイス用ですlibdir/usr/libビルドシステムでインストールを実行するときに、新しくビルドされたファイルが実際にインストールされることを望まないで/usr/lib入れたいと思います。簡単に識別してターゲットシステムにコピーできるように、孤立した場所にあります。したがって、一時ディレクトリを作成してそこにインストールします。

mkdir /tmp/yocto-target
make install D=/tmp/yocto-target

したがって、ファイルは最終的に表示されます/tmp/yocto-target/usr/lib。その後、/tmp/yocto-target必要なツールを使用してすべてをアーカイブし、/tmp/yocto-targetプレフィックスを削除し、アーカイブをターゲットデバイスにコピーしてその内容をインストールできます。

他のビルドシステムでもDESTDIR同じ理由でこの変数が使用されます。

おすすめ記事