マルチCPUコアのソースコードパッケージをDebianでコンパイルします。 "apt-get -b source"

マルチCPUコアのソースコードパッケージをDebianでコンパイルします。 "apt-get -b source"

このコマンドを使用して、1つapt-get -b sourceのCPUコアを持つソースコードをダウンロードしてコンパイルします。複数のCPUコアを持つ適切なパッケージマネージャを使用してDebianでパッケージをコンパイルする方法はありますか?-jコマンドのオプションと同じです。makemake -jX

ありがとうございます。

答え1

debuildパッケージから呼び出さdevscriptsれるパッケージのコマンドを使用します。これは、ビルドログを自動的に生成するなど、直接使用するよりもいくつかの利点があります。走った後の通常の使用dpkg-buildpackagedpkg-devdpkg-buildpackage

apt-get source pkgname

はい

debuild -uc -us

しかし、あなたはできます(例えば)

debuild -uc -us -j4

これにより、-jフラグがに渡されますdpkg-buildpackage

の関連部分ですman dpkg-buildpackage

-jjobs同時に実行できるジョブの数。同じ名前の make(1) オプションと同じです。 MAKEFLAGS環境変数に自分自身を追加すると、すべての後続のmake呼び出しがこのオプションを継承します。また、DEB_BUILD_OPTIONS環境変数にParallel = jobsを追加すると、debian / rulesファイルがこの情報を独自の目的で使用できるようになります。このオプションが指定されると、DEB_BUILD_OPTIONS環境変数のparallel = jobsは-j値をオーバーライドします。

もちろん、これが機能するという保証はありません。効果を得るには、ビルドで実際にMAKEFLAGSまたはDEB_BUILD_OPTIONSを適切な方法で使用する必要があります。

私はそれを使用したことがありませんが、apt-get -b sourceコマンドラインを介して適切なフラグを渡すこともできます。ただし、このビルドを2段階で実行することをお勧めします。とにかくダウンロード後に直接ビルドすることはほとんどの場合うまくいきません。通常、少なくともビルド依存関係を最初にインストールする必要があります。バックポートまたはビルドする同じバージョン用に設計されていないパッケージングを使用している場合は、ビルドを試みる前にパッケージングを変更する必要があるかもしれません。

関連情報