2016-12-21 27 views
0

Qt Creatorの依存関係については、いくつかの方法があります。通常のプロジェクトでは、プロジェクト設定の下に依存関係タブがあります。 Subdirsプロジェクトでは、各プロジェクトに与えることができるパラメータは.dependsです。 DOCSしかしSubdirsプロジェクトは、他のSubdirsのプロジェクトを含めることができますし、依存関係は、このようにサブ・サブ・プロジェクトの下、プロジェクトにこれらにまたがることができ、異なるサブサブプロジェクトであること、他のに依存します。Subdirsプロジェクトの依存関係を正しく設定する方法は?

Master Subdirs 
L--- Subdirs 1 
    L--- Project 1 
L--- Subdirs 2 
    L--- Project 2 //depends on Project 1 

2つの問題があります。この設定で:どちらもProject 2またはProject 1は、同様にSubdirs 2のために(それには知られていないので

1)一つは)Master Subdirsに依存関係を設定することはできません。設定できる唯一のことは、Subdirs 2Subdirs 1に依存するかどうかです。ただし、相互依存関係が存在する場合は役に立ちません。

2)独自にProject 2を構築するとき、それはSubdirsプロジェクトに設定され、その依存関係について知っていないとSubdirsでのプロジェクトは、[プロジェクト]タブで設定した定期的な依存関係を持つことができないので、1が自動的にそれを構築することができない、すべてを構築したり、構築しなければならないのいずれか実際のプロジェクトの前に手動で依存関係を作成します。

これらの問題の解決策はありますか? No.1は子供を使用しないで解決することができますSubdirsいいえ。 2はまだ問題ではない。

答えて

1

あなたの評価は基本的に正しいです。

1)あなたはこれだけの子であるプロジェクト間でサブディレクトリ.PROファイルに依存関係を設定することができますので、あなたのどちらかがSubdirs 1に依存Subdirs 2を作るかを取り除く必要があるProject 1に依存Project 2を作るために、.PROファイルをサブディレクトリ子サブディレクトリ。

2)あなたはQtの創造主で個々のプロジェクトとしてProject 1Project 2を開いた場合は、Master Subdirsを構築する必要があり、どちらかProject 1への依存に関するながらProject 2を構築するには、プロジェクトの下Dependenciesタブで依存関係を設定する必要がありますProject 2の設定。

+1

また、 'CMake'のようなより高度なメタビルドシステムを使うこともできます。これはビルドターゲットの依存関係を追跡すると思います –

関連する問題