12

説明されているように、同じライブラリの静的バージョンと共有バージョンの両方をビルドしたいCMake で同じライブラリの静的バージョンと共有バージョンの両方をビルドすることは可能ですか?

ただし、ソースはバージョンごとに 1 つずつ、2 回コンパイルされますが、これは必要ありません。これを回避する方法はありますか?

現在私は持っています:

add_library(${LIB} SHARED ${${LIB}_srcs})

add_library(${LIB}_static STATIC ${${LIB}_srcs})

一度だけコンパイルするために何を変更する必要がありますか? ご参考までに。同じコンパイラ フラグと定義があります。

4

2 に答える 2

6

CMake 2.8.8 以降、オブジェクト ライブラリを使用できます: CMake: lib 用にビルドされたオブジェクト ファイルを別の lib ターゲットに再利用します

http://www.cmake.org/Wiki/CMake/Tutorials/Object_Libraryも参照してください

于 2012-10-16T01:31:07.713 に答える