1

一部のライブラリを静的にリンクし、他のライブラリを動的にリンクするように CMake に指示するにはどうすればよいですか?

glic を除くすべての依存ライブラリに静的にリンクされた C++ exe をコンパイルしたい

ありがとう

4

1 に答える 1

1

ライブラリに対する CMake のアプローチは、まず でそれらを見つけてからfind_library、 で結果を使用することですtarget_link_libraries

静的ライブラリまたは動的ライブラリのどちらを使用するかは、find_library呼び出し中に選択されます。

  • どのバージョンが使用されているか気にしない場合は、電話してくださいfind_library(MYLIB mylib)

  • 静的ライブラリが必要な場合は、使用しますfind_library(MYLIB libmylib.a)(これは Linux 用です。Windows では .lib を検索します)。

  • 動的ライブラリが必要な場合は、使用しますfind_library(MYLIB libmylib.so)

次に、ライブラリが見つかったかどうかをテストし、次のコマンドif (MYLIB)でターゲットにリンクします。target_link_libraries(mytarget ${MYLIB})

于 2013-06-18T22:37:34.500 に答える