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

SBOM prevent installing modules in different directory

XMLWordPrintable

    • Linux/X11
    • ffef51688 (dev), d4aac087f (6.8)

      I used to build and package Qt modules in a way similar to what COIN is doing:

      1. Qt is installed in /home/qt/work/install/
      2. I build a Qt module using /home/qt/work/install/bin/qt-configure-module <path to module>
      3. Finally I run cmake --install . --prefix /home/qt/work/install_root

      However, since v6.8.1, this does not work anymore.
      During the cmake --install step it fails during SBOM generation. I have tested with multiple Qt modules and they all failed. Here is the output for QtWebEngine:

      -- Starting SBOM generation in build dir: /home/qt/work/build/qt_sbom/staging-qtwebengine.spdx.in
      CMake Error at qt_sbom/SPDXRef-PackagedFile-qt-module-WebEngineCore.cmake:5 (message):
        Cannot find 'lib/libQt6WebEngineCore.so.6.8.1' to compute its checksum.
        Expected to find it at
        '/home/qt/work/install/lib/libQt6WebEngineCore.so.6.8.1'
      Call Stack (most recent call first):
        qt_sbom/assemble_sbom.cmake:14 (include)
        cmake_install.cmake:133 (include)
      

      In other word the SBOM generation is looking for libQt6WebEngineCore.so.6.8.1 in the Qt install directory, not in the module install directory, disregarding the {{--prefix)) option.

      It seems there are 2 ways to mitigate the issue:

      1. Run cmake -install without prefix before running it with -prefix, this is what COIN is doing
      2. Set -no-sbom when calling qt-configure-module. For some reason setting -no-sbom during the initial configure is not carried over to modules that are built later with qt-configure-module

        For Gerrit Dashboard: QTBUG-131883
        # Subject Branch Project Status CR V

            alexandru.croitor Alexandru Croitor
            bterrier Benjamin Terrier
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes