11

私の C++ ビルド プロセスでは、ビルド ターゲットを XML で指定できる便利な小さな Makefile ジェネレーターであるBakefileを使用しており、そこからさまざまな Makefile またはプロジェクト ファイルを生成できます。これは問題なく動作し、GNU autotools スクリプトの生成に使用しています。

同様の機能を持っていると思われるPremakeについて聞いたことがあります。Luaでターゲットを指定すると、それに応じて Makefile が生成されます。

Bakefile と Premake の違いを知っている人はいますか? 両方の経験がある人はいますか?Premake はより最近で、より活発な開発が行われているように見えますか?

XML パーサーticppは Premake を使用しますが、ticpp をビルドする前に premake をダウンロードする必要があります。最初に premake をダウンロードしてインストールする必要がないように、さまざまなシステム用の Makefile を事前に生成することはできませんか?

注:最適なビルド ツールについてはさまざまな SO スレッドがあることは知っていますが、通常、答えはCMakeSConsまたはJamです。ただし、ユーザーがプロジェクトをビルドする前にダウンロードする必要のないものに興味があります。

4

3 に答える 3

11

正確な答えではありませんが、心からpremake4をお勧めします。素晴らしいです。

于 2010-01-08T06:28:50.290 に答える
9

はい、Premake では、必要に応じて配布できる Makefile (または Visual Studio ソリューションなど) を生成できます。Premake 自体には、事前に生成された makefile がソース パッケージに含まれています。

ターゲット マシンで Premake をダウンロードして実行すると、システムの自動分析またはコマンドライン フラグを使用した手動で、メイクファイルをカスタマイズできます。一部のプロジェクトでは、これは価値のあるトレードオフですが、必須ではありません。

于 2009-06-23T20:52:29.940 に答える
2

Premake 4 と新しいバージョンの Bakefileの両方を使用した後、それらは異なるユース ケースをターゲットにしているようです。

  • Bakefile は、ビルド ファイルをローカルで生成し、それを使用してプロジェクトを配布します。私はこのツールで素晴らしい経験をしました。
  • Premake は CMake に似ています: ローカルで makefile を生成します。場合によっては、ターゲット マシンで実行する必要がある多くの凝った構成が必要になることがあります。Bakefile を使用すると、プラグインを使用してこれを実現できますが、すぐに面倒になる可能性があります。ただし、ファイルを事前に生成することはできます。

使い方としては、Bakefile をお勧めします。派手なものはいらないそうです。

于 2015-02-11T19:46:37.200 に答える