Qt6 ProtobufのCMakeコマンド

プロジェクトでQt6::Protobufモジュールを使用するには、以下のCMakeコマンドを呼び出す必要があります:

find_package(Qt6 REQUIRED COMPONENTS Protobuf)

target_link_libraries(mytarget PRIVATE Qt6::Protobuf)

qt_add_protobufCMakeコマンドを使用すると、プロジェクトのQt Protobufコード生成を暗黙的に呼び出すことができます。

qt_add_protobuf の使い方

cmake_minimum_required(VERSION 3.16...3.22)
project(MyThings)

find_package(Qt6 REQUIRED COMPONENTS Protobuf)
qt_standard_project_setup()

qt_add_protobuf(MyMessages
    GENERATE_PACKAGE_SUBFOLDERS
    PROTO_FILES
        path/to/message.proto
        path/to/other_message.proto
    PROTO_INCLUDES
        /path/to/proto/include
)

qt_add_executable(MyApp main.cpp)

target_link_libraries(MyApp PRIVATE MyMessages)

上の例では、PROTO_FILES オプションに渡されたパスで定義されたメッセージタイプを含むMyMessages というライブラリを生成しています。GENERATE_PACKAGE_SUBFOLDERS オプションで、生成されたファイルのフォルダ構造を生成します。また、PROTO_INCLUDES オプションは、指定されたディレクトリで依存関係やインポートを探すように protoc に指示します。MyApp という実行可能ファイルのターゲットを作成し、MyMessages ライブラリにリンクします。

CMakeコマンドリファレンスも参照してください

qt_add_protobuf

protobuf スキーマを使用して Qt ベースの C++ ソースコードを生成します。

本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。