私はC++ソリューションのコレクションを持っています。それらはすべて、共通コードのディレクトリを含んでいます。だけでなく#include
、共通のソースファイルも個別に作成します。ディレクトリ構造の例を次に示します。
code/
Common/
ProjectA/
ProjectB/
したがってProjectA
、ProjectB
両方にからのファイルが含まれますCommon
。両方のプロジェクトの中間ディレクトリをに設定しましたcode/_build/Debug/Obj
。
ProjectA
最初にビルドした場合、ソースProjectB
から中間ファイルを再構築する必要はないと予想していました。Common
これは起こっていません。ProjectB
はそれらのオブジェクトファイルProjectA
を再構築しています。再構築すると、それらも再構築されます。
これは、オブジェクトファイルが現在コンパイル中のプロジェクトによってビルドされていない場合に、条件付き再構築がトリガーされるかのようです。これは本当ですか?
一般的なコードからライブラリを作成することもできますが、これはオプションではありません。