• 締切済み

VC++のビルドとリビルドの違い

VC(マイクロソフトのVisual C++)で、ソースをコンパイルするときにビルドを押すと思うのですが、ビルドの隣にリビルドがあります。このビルドとリビルドの違いはなんなのでしょうか?? こんなときは「ビルド」でこんなときは「リビルド」のような具体的な事例もできれば教えて頂ければ幸いです。

みんなの回答

noname#11476
noname#11476
回答No.2

通常はビルドで充分ですが、以下のような場合はリビルドを使います。 1.コンパイラ、リンカのスイッチを変えて作り直したいとき。 たとえば、コンパイラの最適化オプションの変更であるとか、違うバージョンのライブラリとリンクし直したいときなど。 よくあるのは、ソースコード内で#ifdef XXXXXXX を使っていて、XXXXXXの定義がmakefile内、プロジェクト設定の中でオプション(-DXXXXXXX)として与えるなど場合には、その有無の差異をmake(又はVCのビルドの機能)が識別出来ないので、リビルドしないと反映されません。 2.なんだかよくわからないが動きがおかしいとき。 普通はきちんと依存関係が作られているので問題は起きないはずですが、きちんとヘッダファイルがインクルードされていないなど依存関係が不明なケースがあると、ビルドが上手く行かないことがあります。 3.一度は良しとして無視していたワーニングをもう一度再確認したいとき。 例えば、使われていない変数があるなどのワーニングでは、作っているときには放置していますが、最後には、無駄なコードを省くためにリビルドしてワーニングを確認して、不要な変数を削除するなどです。 では。

noname#25358
noname#25358
回答No.1

 ビルドとは、最後にコンパイルしてから変更のあったファイルだけをビルドします。  ですので、1つのプロジェクト内に大量のファイルがある場合はコンパイルが高速化します。  リビルドはすべてのファイルを完全に1からコンパイルしなおす方法で、そのプロジェクトを作成してから初めてのコンパイルと同じことになります。

関連するQ&A