[Development] Fixing the 6.5 build when cross-compiling (missing Qt6::qtprotobufgen)

Morten Sørvig Morten.Sorvig at qt.io
Thu Dec 22 11:58:20 CET 2022


Hi, I’m running into a configure error for a top-level Qt 6.5 wasm build. I use “init-repository --module-subset=all” to check out the Qt modules.

The host system does not have protobuf installed, which configure warns me about during the host tools build (this is fine):

-- Configuring submodule 'qtgrpc'
-- [QtGrpc] CMAKE_BUILD_TYPE was set to: 'Release'
-- [QtGrpc] CMAKE_STRIP (original): /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip
-- [QtGrpc] Could NOT find Protobuf (missing: Protobuf_LIBRARIES Protobuf_INCLUDE_DIR)
-- [QtGrpc] Could NOT find Protobuf (missing: Protobuf_LIBRARIES Protobuf_INCLUDE_DIR)
-- [QtGrpc] Could NOT find Protobuf (missing: Protobuf_LIBRARIES Protobuf_INCLUDE_DIR)
-- [QtGrpc] Could NOT find Protobuf (missing: Protobuf_LIBRARIES Protobuf_INCLUDE_DIR)

But then, during the target (wasm) build the warning gets upgraded to an error:

-- Configuring submodule 'qtgrpc'
-- [QtGrpc] CMAKE_BUILD_TYPE was set to: 'Debug'
-- [QtGrpc] Could NOT find Protobuf (missing: Protobuf_LIBRARIES Protobuf_INCLUDE_DIR)
-- [QtGrpc] Could NOT find Protobuf (missing: Protobuf_LIBRARIES Protobuf_INCLUDE_DIR)
-- [QtGrpc] Could NOT find Protobuf (missing: Protobuf_LIBRARIES Protobuf_INCLUDE_DIR)
-- [QtGrpc] Running syncqt.cpp for module: QtProtobuf
-- [QtGrpc] Searching for tool 'Qt6::qtprotobufgen' in package Qt6ProtobufTools.
-- Could NOT find Qt6ProtobufTools (missing: Qt6ProtobufTools_DIR)
CMake Error at qtbase/cmake/QtToolHelpers.cmake:605 (message):
  Failed to find the host tool "Qt6::qtprotobufgen".  It is part of the
  Qt6ProtobufTools package, but the package could not be found.  Make sure
  you have built and installed the host Protobuf module, which will ensure
  the creation of the Qt6ProtobufTools package.
Call Stack (most recent call first):
  qtbase/cmake/QtToolHelpers.cmake:55 (qt_internal_find_tool)
  qtgrpc/src/tools/qtprotobufgen/CMakeLists.txt:9 (qt_internal_add_tool)


Could we find a different way to handle this where it does not become a configure error for the top-level Qt build? Especially if we continue to add special-purpose modules it can become difficult to satisfy all host requirements for all modules.


Morten
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20221222/16c270ec/attachment-0001.htm>


More information about the Development mailing list