[解決済み] CMake target_link_libraries インターフェース依存性
2022-06-28 07:49:58
質問
私は CMake の初心者で、PUBLIC、PRIVATE、INTERFACE のキーワードに関連して少し混乱しています。
target_link_libraries()
. ドキュメントでは、1つのコマンドでリンクの依存性とリンクインターフェースの両方を指定するために使用することができると言及しています。
リンク依存性とリンクインターフェースとは、実際にはどのような意味ですか?
どのように解決するのですか?
共有ライブラリを作成する場合で、ソースが
cpp
ファイル
#include
他のライブラリのヘッダー(Say,
QtNetwork
など)、ヘッダファイルには
QtNetwork
ヘッダを含まない場合
QtNetwork
は
PRIVATE
依存関係です。
ソースファイルやヘッダが他のライブラリのヘッダを含んでいる場合、それは
PUBLIC
依存となります。
ソースファイル以外のヘッダーファイルが他のライブラリのヘッダーを含んでいる場合、それは
INTERFACE
依存となります。
の他のビルドプロパティは
PUBLIC
と
INTERFACE
の依存関係は、消費ライブラリに伝搬されます。
http://www.cmake.org/cmake/help/v3.0/manual/cmake-buildsystem.7.html#transitive-usage-requirements
関連
-
[解決済み] CMakeでコンパイラを指定するには?
-
[解決済み] CMakeにソースディレクトリにある静的ライブラリをリンクするように指示するにはどうすればよいですか?
-
[解決済み] CMakeの出力をクリアするための'cmake clean'コマンドを探しています。
-
[解決済み] configure --prefix=DIR && make all install ' と同等のCMakeは何ですか?
-
[解決済み】CMAKE_MODULE_PATHを指定する必要がある場合、find_package()はどのように使用するのでしょうか?
-
[解決済み] CMakeでソースファイルを指定する場合、GLOBで指定するのと、1ファイルずつ指定するのと、どちらが良いですか?
-
[解決済み] CMAKEがエラーを発生させる原因
-
[解決済み] CMakeで警告レベルを設定するには?
-
[解決済み] CMAKE_CURRENT_SOURCE_DIRとCMAKE_CURRENT_LIST_DIRの相違点
-
[解決済み] CMake target_link_libraries インターフェース依存性
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] CMakeにソースディレクトリにある静的ライブラリをリンクするように指示するにはどうすればよいですか?
-
[解決済み] configure --prefix=DIR && make all install ' と同等のCMakeは何ですか?
-
[解決済み】CMAKE_MODULE_PATHを指定する必要がある場合、find_package()はどのように使用するのでしょうか?
-
[解決済み] CMakeでソースファイルを指定する場合、GLOBで指定するのと、1ファイルずつ指定するのと、どちらが良いですか?
-
[解決済み] CMakeでディレクトリを作成する
-
[解決済み] CMAKEがエラーを発生させる原因
-
[解決済み] CMakeで警告レベルを設定するには?
-
[解決済み] CMAKE_CURRENT_SOURCE_DIRとCMAKE_CURRENT_LIST_DIRの相違点
-
[解決済み] CMakeを使用して、CTestから冗長出力を得るにはどうすればよいですか?
-
[解決済み] CMake target_link_libraries インターフェース依存性