CMake-Befehle in Qt6 Protobuf

Sie sollten die folgenden CMake-Befehle aufrufen, um das Qt6::Protobuf-Modul in Ihrem Projekt zu verwenden:

find_package(Qt6 REQUIRED COMPONENTS Protobuf)

target_link_libraries(mytarget PRIVATE Qt6::Protobuf)

Sie können den CMake-Befehl qt_add_protobuf verwenden, um implizit die Codegenerierung Qt Protobuf für Ihr Projekt aufzurufen.

Verwendung von 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)

Im obigen Beispiel wird eine Bibliothek namens MyMessages generiert, die die Nachrichtentypen enthält, die in den Pfaden definiert sind, die der Option PROTO_FILES übergeben wurden. Die Option GENERATE_PACKAGE_SUBFOLDERS generiert eine Ordnerstruktur für die erzeugten Dateien. Und die Option PROTO_INCLUDES weist protoc an, in den angegebenen Verzeichnissen nach Abhängigkeiten oder Importen zu suchen. Wir erstellen ein Ziel für eine ausführbare Datei namens MyApp, die wir mit der Bibliothek MyMessages verlinken.

Siehe auch CMake Befehlsreferenz.

qt_add_protobuf

Generiert Qt-basierten C++-Quellcode unter Verwendung eines Protobuf-Schemas

© 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.