Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-110783

Build failure with static QOffscreenIntegrationPlugin in LTS-branch / due to tqtc- prefix in repo names

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P2: Important
    • 6.5.4, 6.6.1
    • 6.2.8
    • Build System: CMake
    • None
    • Linux/Other display system
    • e5c7bb62eef98df40b3d2534b47a1d1ab26e7c38

    Description

      In QtSafeRenderer, we build static binaries of the host tools (lts Qt6.2).
      The Qt is built with the following configure arguments: 

      -release -static -nomake tests -nomake examples -no-icu -qt-freetype -no-opengl -qpa offscreen -no-xcb -qt-libpng -no-sql-mysql -no-sql-psql

      I try to use the offscreen plug-in as follows:

      qt_import_plugins(${target_name}
          INCLUDE Qt::QOffscreenIntegrationPlugin
      )

      CMake configuration gives the following error:
      Warning: plug-in Qt::QOffscreenIntegrationPlugin is not known to the current Qt installation.
      And then the build fails:
      main.cpp.text.startup.GLOBAL_sub_I_main.cpp+0x8): undefined reference to `qt_static_plugin_QOffscreenIntegrationPlugin()'

      The root cause seems to be in QtPluginCOnfig.cmake.in. As we have the following definition in the dependencies.yaml:

      dependencies:
        ../../tqtc-qtbase:
          ref: 3eb6b13c0b30263c6c4d17e1b8c4e5a2cbc73b9e
          required: true

      However, the Qt6QOffscreenIntegrationPluginConfig.cmake verifies if the value of QT_REPO_DEPENDENCIES matches with "QtBase".

      include_guard(DIRECTORY)
      if(DEFINED QT_REPO_DEPENDENCIES AND NOT QT_BUILD_STANDALONE_TESTS)
          # We're building a Qt repository.
          # Skip this plug-in if it has not been provided by one of this repo's dependencies.
          string(TOLOWER "QtBase" lower_case_project_name)
          if(NOT lower_case_project_name IN_LIST QT_REPO_DEPENDENCIES)
                 return()
          endif()
      endif()

      The build is successful if I change the QtBase to tqtc-QtBase in Qt6QOffscreenIntegrationPluginConfig.cmake. So, I suppose the repo naming should accept tqtc-naming in the LTS repository.

       

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              qtbuildsystem Qt Build System Team
              teemu.holappa Teemu Holappa
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes