web-dev-qa-db-ja.com

ビルドの自動化:Qt以外のプロジェクトにQMakeを使用するのは通常ですか?

したがって、私はC++ライブラリを作成することを計画していて、それをクロスプラットフォームにしたいと考えています。このライブラリはUIを処理せず、依存関係をできるだけ少なくしたいので、Qtを使用しません。 (実際には、Qtは私が望んでいることを達成するのに本当に役立ちません。使用する予定のすべてはSTLとBoostです)。クロスプラットフォームプロジェクトを構築する場合、QMakeは非常に使いやすく、経験もあるのでとても気に入っています。 CMakeの良い点も聞きましたが、QMakeほど簡単に使用できるとは思えません。

とにかく、ここに私の質問があります:私が知っているビルド自動化ツール、またはQMake以外のプロジェクトではQMakeをそのまま使用する必要がありますか?これをCMakeを学ぶ機会としてとらえるべきですか?または、これら2つに代わるより良い代替手段はありますか?

9
Raphael

その選択は完全にあなた次第です。

しかし、さまざまな理由でvery多数のQtベースのプロジェクトがQMakeから移動し、CMakeに切り替えられたことを指摘しておきます。必要に応じてQMakeを使用できないという技術的な理由はないことも指摘しておきます。

個人的には、私はCMakeを使用しています。これは、autotoolsがかつて好まれていた役割を十分に担っており、理解と作業がはるかに簡単な一連のツールと構文を使用して行うためです。しかし、QMakeを使用する利点-構文CMakeよりもはるかに単純で、おそらく理解と使用が簡単かもしれません。

7
greyfade

以前は、Contouring、Seismic、Welllog、GISスペースで使用するSDKを作成した会社( Interactive Network Technologies )で働いていました。 C++製品は、さまざまな種類のUnixおよびWindowsでサポートされていました(NTと他のフレーバーを定義する必要があったとき)

QTが出たとき、すでにQMakeがありました。私は当時、makeとAntに精通していました。 QMakeで3日間過ごした後、私はそれを捨て、単にmakeを使用しました。

Makeは非常に複雑になる可能性がありますが、AntまたはQMakeを使用することをお勧めします。

2
Kristofer Hoch