cmakeは、私がこれまでに望むよりも簡単です。私は自分自身がどのように私は1つ(または複数)を作成することができ、ある尋ねるどのような瞬間に、次のプロジェクトの構造が機能するようCMakeLists.txt
ファイル(複数可):具体的にcmakeとQTを使って複数のプロジェクトを編成する
my workspace
src
project1
project2
build
project1
project2
、私が判断する必要があり、次の2つの制約があります私のプロジェクト構造と私のCMakeLists.txt
ファイルの両方:
1)私は、ビルドだけでIDEを経由してこのプロジェクトに取り組みたいと考え、各特定のユーザのために生成する必要があり、gitのを使用してのみCMakeLists.txt
と私のソースファイルをコミットしたいと思います彼の欲望のうち
2)もし誰かがクローン私のリポジトリは、彼はこのプロジェクト
3)src
ディレクトリがあるべきで働くことができるように、彼/彼女が望むIDE用(/my workspace/build/project1
と/my workspace/build/project2
)上記のようにディレクトリを構築cmakeのを実行することができますプロジェクトで作業している人なら、IDEでこれを行うことができます。srcファイルを変更してCMakeLists.txt
とした後、他の人が再びチェックアウトして同じ方法で作業できるようにします
このようにコラボレーションのための巨大な利点!しかし、cmake
は、cmake
が呼び出されたディレクトリにすべてを構築しているようです。質問のための今
、:
a)に対応するビルドで私の希望のディレクトリを作成するためには、/my workspace/build/project1
と/my workspace/build/project2
フォルダを構築し、新たからcmake
を呼び出す以外の方法はありますか?
b)コラボレーションするために別のディレクトリ構造を使用したいですか?
c)あなたがCMakeLists.txt
ファイルをどこに置いていますか(どこからcmake
に電話をかけていますか?)、一般的なプロセスは何ですか?
d)QTはうまく動作するように見えるmocファイルを作成します。あなたは何らかの方法でそれらをコミットするのですか、それともチェックアウトするすべての人のためのディレクトリを作成して、それらを使用できることを確認していますか?
生成されたすべてのファイルをビルドフォルダに入れて、moc、...によって生成されたファイルを含みます。 – drescherjm
私のビルドフォルダは、ワークスペースの下にない全く別のツリーにあります。その理由は、私はWindows上にビルドしているので、私は各ソースツリーのビルドフォルダが1つ以上あるので、1つ以上のコンパイラでプロジェクトをビルドします。 – drescherjm