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

qmlsc not used when cross compiling

    XMLWordPrintable

Details

    Description

      While qmlsc is automatically picked up for host builds, qmlcachegen is used when cross compiling for i.e. iOS or webassembly, even though the host Qt has qmlsc available.

      Trying to force compiler usage by adding

      set_target_properties(<target> PROPERTIES
          QT_QMLCACHEGEN_EXECUTABLE qmlsc
      )
      

      runs into

      CMake Error at /home/prcs1076/.conan/data/qt/6.4.1/bje/stable/package/3f99d7db1866b9cf8ba3ecce6347e253f09fa3cd/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake:941 (add_custom_command):
        Error evaluating generator expression:
      
          $<TARGET_FILE:Qt6::qmlsc>
      
        No target "Qt6::qmlsc"
      Call Stack (most recent call first):
        /home/prcs1076/.conan/data/qt/6.4.1/bje/stable/package/3f99d7db1866b9cf8ba3ecce6347e253f09fa3cd/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake:2080 (_qt_internal_target_enable_qmlca
      chegen)
        /home/prcs1076/.conan/data/qt/6.4.1/bje/stable/package/3f99d7db1866b9cf8ba3ecce6347e253f09fa3cd/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake:611 (qt6_target_qml_sources)
        /home/prcs1076/.conan/data/qt/6.4.1/bje/stable/package/3f99d7db1866b9cf8ba3ecce6347e253f09fa3cd/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake:670 (qt6_add_qml_module)
        src/app/CMakeLists.txt:378 (qt_add_qml_module)
      

      Either I've to do something special I'm unable to figure out in the moment, or there's a bug in the qmlsc detection for cross compiles.

      Attachments

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

        Activity

          People

            qtbuildsystem Qt Build System Team
            cajus Cajus Pollmeier
            Votes:
            1 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes