qt_import_plugins
インポートまたは除外するプラグインのカスタムセットを指定します。
このコマンドはQt6
パッケージのCore
コンポーネントで定義されています:
find_package(Qt6 REQUIRED COMPONENTS Core)
このコマンドは Qt 5.14 で導入されました。
概要
qt_import_plugins(target [INCLUDE plugin ...] [EXCLUDE plugin ...] [INCLUDE_BY_TYPE plugin_type plugin ...] [EXCLUDE_BY_TYPE plugin_type] [NO_DEFAULT] )
バージョンレスコマンドが無効になっている場合は、代わりにqt6_import_plugins()
を使ってください。このコマンドと同じ引数をサポートしています。
説明
インポートするプラグインのカスタムセットを指定します。オプションの引数を指定します:INCLUDE
EXCLUDE
,INCLUDE_BY_TYPE
, およびEXCLUDE_BY_TYPE
は複数回使用できます。
INCLUDE
- を使用して、インポートするプラグインのリストを指定できます。EXCLUDE
- を使用すると、除外するプラグインのリストを指定できます。INCLUDE_BY_TYPE
- 特定のプラグイン・タイプに対してインポートするプラグインのリストを上書きするために使用できます。EXCLUDE_BY_TYPE
- 除外するプラグイン・タイプを指定するために使用することができます。NO_DEFAULT
- デフォルトのプラグインが自動的に取り込まれないようにします(例えば、デフォルトのプラットフォームプラグイン)。
Qt には、imageformats
、platforms
、sqldrivers
などのプラグイン・タイプがあります。
ダイナミック・プラグイン
プラグインがダイナミック・ライブラリの場合、この関数はプラグインのデプロイを制御します。この関数を使うことで、例えばAndroid APKにパッケージされる特定のプラグインを除外することができます:
qt_add_executable(MyApp ...) ... qt_import_plugins(MyApp EXCLUDE_BY_TYPE imageformats)
上記のスニペットでは、MyApp
をデプロイする際に、imageformats
タイプを持つすべてのプラグインが除外されます。出来上がったAndroid APKには、imageformats
のプラグインは含まれません。
このコマンドを使用しない場合、ターゲットがリンクしている Qt モジュールに属するすべてのプラグインが自動的にデプロイされます。
静的プラグイン
このコマンドを使用しない場合、ターゲットは自動的に、ターゲットがリンクされている Qt モジュールごとに、デフォルトのスタティックプラグインの適切なセットに対してリンクします。詳細はtarget_link_libraries を参照してください。
各プラグインには、スタティックプラグインを自動的に初期化する C++ スタブファイルが付属しています。その結果、プラグインにリンクするターゲットは、このC++ファイルをSOURCES
に追加することになります。
例
qt_add_executable(myapp main.cpp) target_link_libraries(myapp Qt6::Gui Qt6::Sql) qt_import_plugins(myapp INCLUDE Qt6::QCocoaIntegrationPlugin EXCLUDE Qt6::QMinimalIntegrationPlugin INCLUDE_BY_TYPE imageformats Qt6::QGifPlugin Qt6::QJpegPlugin EXCLUDE_BY_TYPE sqldrivers )
上のスニペットでは、実行可能ファイルmyapp
を使って、次のことが起こります:
Qt6::QCocoaIntegrationPlugin
が myapp にインポートされる。Qt6::QMinimalIntegrationPlugin
プラグインは、myapp への自動インポートから除外されます。imageformats
のデフォルトのプラグインリストは、Qt6::QGifPlugin
とQt6::QJpegPlugin
だけを含むように上書きされます。- 全ての
sqldrivers
プラグインは自動インポートから除外されます。
qt_import_qml_plugins()も参照してください 。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.