2013-10-21 6 views
7

いくつかの問題があり、私はいくつかの助けを見つけることができます。コンソールアプリケーションをテストするための複数の.objへのリンク

私は、Visual Studioで同じソリューションの下に2つのプロジェクト2012

私はこの1つのプロジェクトである.exeファイルとして出力し、コンソールアプリケーションを作成するカム背景のビットを持っています。

別のプロジェクトでは、コンソールアプリケーションプロジェクトのクラスで単体テストを実行するようにGoogleテストを設定しました。

メインプロジェクトを静的ライブラリにコンパイルできた場合、.libにリンクできるため問題はありませんが、これはオプションではありません。

私は、.objへのリンクが動作することを発見しましたが、リンカ - >入力にそれぞれ手動で入力する必要があり、多数のクラスが存在するため、これが乱雑になることがあります。

この問題を解決するにはどうすればいいですか。同じフォルダー内のすべての.objにリンクする方法がありますか、紛失しているオプションがありますか?

答えて

20

私はあなたとまったく同じ構成を有しており、これは私がやったことです:

私は.LIBライブラリにすべての.objファイルを置くためのVisual StudioのLIBユーティリティを使用して、私は私のGTESTを作ることができますそれへのプロジェクトリンク。メインプロジェクトの「イベントの構築」/「ビルド後のイベント」にコマンド

lib /NOLOGO /OUT:"$(TargetPath).lib" "$(ProjectDir)\$(Configuration)\*.obj" 

を置く

、あなたは.exeファイルとしてあなたのコンソールアプリケーションを保つことができるし、同じ時間内に集約すべてをobjファイルを最新のlibにコピーします。

希望すると助かります!

ところで、この問題はこのポストに少し似ています:Linker error - linking two "application" type projects in order to use Google Testと私はそれをここにリンクすると便利かもしれないと思います。

+1

私は感謝しました。 –

関連する問題