Visual Studio 2010プロジェクトで参照されるライブラリ

たとえば、プログラムのエントリポイントを持つメインプロジェクトと、メインライブラリとリンクしている静的ライブラリを持つ2番目のプロジェクトの2つのプロジェクトを持つC ++ Visual Studio 2010ソリューションがあるとします)、これは他のVS2010ソリューションで使用されています。

The static library project uses an additional third-party library (.lib). Currently, this third-party static library is set in the main project's Additional Dependencies field of the Linker -> Input section of the Property Pages, in order for the whole program to compile.

私の質問は、静的ライブラリプロジェクトにこの依存関係を追加する方法があるからです。そのため、各プロジェクトのメインプロジェクトから手動で追加する必要はありません静的ライブラリプロジェクトが含まれている異なるVS2010ソリューションはありますか?

これを行うさまざまな方法はありますか?静的ライブラリプロジェクトによって生成された.libにこのサードパーティのライブラリを埋め込みますか?これを行うための良い練習や推奨はありますか?

ありがとう!

3
.libをProject + Add Existing項目でライブラリプロジェクトに追加すると、マージされます。同じ.libの複数のコピーを持つことは、最高のアイデアではありません。
追加された 著者 Hans Passant,
私は恐れている静的なリンクでこれを行う方法はないとは思わない。
追加された 著者 StevieG,

2 答え

静的ライブラリプロジェクトでは、サードパーティの静的ライブラリが使用されます。静的ライブラリを作成するときにライブラリをリンクするだけで、静的ライブラリは3つ目の部分をライブラリではなくライブラリにする必要はありません。静的ライブラリは、サードパーティの静的ライブラリから静的ライブラリに必要なすべてのバイナリパーツを埋め込みます。

サードパーティ製ライブラリ(スタティックライブラリに他のすべてのプロジェクトの機能が必要な場合)を他のプロジェクトで使用していない場合は、第三者の静的ライブラリとaganistをリンクする必要はありません。静的ライブラリを代わりに使用してください。

1
追加された

静的ライブラリは、リンカの他の出力と同様です。静的なlibプロジェクトの 'ライブラリアンオプション'に依存関係を追加することができます。これらの依存関係は、通常どおりにリンクされます。

1
追加された