Visual Studio ソリューション パラメーターを設定して、ソリューション全体をビルドせずにプリコンパイル済みヘッダーを作成する方法はありますか。具体的には、それ自体が多くのプロジェクトを持つ巨大な C++ ソリューションです。
ありがとうございました。
Visual Studio ソリューション パラメーターを設定して、ソリューション全体をビルドせずにプリコンパイル済みヘッダーを作成する方法はありますか。具体的には、それ自体が多くのプロジェクトを持つ巨大な C++ ソリューションです。
ありがとうございました。
メリットと設定方法については、こちらの記事をご覧ください。大規模なプロジェクトがある場合は、数回のクリックと余分なディスク容量を確保する価値があります。
この記事では、すべてのソースとヘッダーに stdafx.h を追加する必要があると述べています。それは正しくありません。ソースに追加するだけで十分です。ただし、それより前の行はすべて無視されるため、最初の行であることを確認してください。
この記事では言及していませんが、stdafx.h を含まないソースからエラーが発生します。このエラーを解決するには、エラーを追加するか、プリコンパイル プロセスからソースを除外するかを選択できます。ソース ファイルを除外するには:
ここから数秒で新しいビルドをお楽しみください (最初のビルドには時間がかかります)。
pch Creator ソース ファイル (通常は stdafx.cpp) のみを選択し、それをコンパイルします (Ctrl-F7、または右クリックして [コンパイル] を選択します)。
それはあなたのために働いていないようですので、より多くの情報:
プリコンパイル済みヘッダーを使用するすべてのプロジェクトには、pch ファイルの作成に使用されるソース ファイルが 1 つあり、残りは pch ファイルのみを使用します。このソース ファイルは通常、次の 1 行だけで構成されます。
#include "StdAfx.h"
「Stdafx.h」は、Visual C++ の既定のプリコンパイル済みヘッダー ファイル名ですが、別の名前にすることもできます。"StdAfx.cpp" を単独でコンパイルすると、"Your_Project_Name.pch" という名前のファイルが生成されます (これもデフォルトです)。すべての obj ファイルがある中間ディレクトリにあるはずです。これはプリコンパイル済みヘッダーです。私が言ったように、「ビルド」ではなく「コンパイル」を選択した場合、他のファイルはコンパイルされず、リンクも行われません。
それでも問題が解決しない場合は、何を求めているのかわかりません。
プロジェクトからstdafx.cpp以外のCppファイルを右クリックし、[ビルドから除外]を[はい]に設定すると、プリコンパイル済みヘッダーのみが生成されます。
コマンドラインを使用するか、stdafx.cppのみを含む新しいプロジェクトを作成する場合でも、同じ結果を得ることができます。