9

多くの静的ライブラリとスタンドアロンの cpp ファイルで構築された大きなバイナリがあります。インクリメンタル リンクを使用するように構成されており、すべての最適化が無効になっています/Od- これはデバッグ ビルドです。

スタンドアロンの cpp ファイルを変更すると、インクリメンタル リンクが高速に実行されることに気付きました - 1 分。しかし、静的ライブラリのcppを変更すると、通常のリンクと同じ10分という長時間実行されます。この場合、インクリメンタル リンクを使用しても何のメリットもありません。それを高速化することは可能ですか?私はVS2005を使用しています。

4

3 に答える 3

9

プロジェクトの [リンカーの全般] プロパティ ページで [ライブラリ依存関係の入力を使用] を設定します。これにより、.lib の代わりに依存関係 .lib から個々の .obj ファイルがリンクされます。これには、いくつかの異なる副作用がある可能性があります。

于 2011-09-15T16:27:52.037 に答える
2

私はあなたに別のタイプの答えを与えるつもりです。ハードウェア。

開発環境は?RAM を増やしたり、プロジェクトをソリッド ステート ドライブに入れる方法はありますか? SSD を使用すると、仕事のプロジェクトでリンク時間が桁違いに速くなることがわかりました。コンパイル時間は少し短縮されましたが、リンクは膨大でした。もちろん、より高速なシステムを入手することも役に立ちました。

于 2011-09-15T16:01:44.113 に答える
0

私の理解が正しければ (Visual Stuio を数年間使用した後)、インクリメンタル リンク機能は、静的ライブラリの一部であるオブジェクト ファイルに対しては機能しません。

これを解決する 1 つの方法は、アプリケーション プロジェクトにすべてのソース ファイルが含まれるようにソリューションを再構築することです。

于 2011-09-15T16:08:07.413 に答える