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

Configure fails with -DFEATURE_sanitize_thread=ON -DFEATURE_sanitize_address=ON without a proper message

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P2: Important
    • 6.8.4, 6.9.2, 6.10.0 Beta1, 6.11.0 FF
    • 6.10
    • Build System: CMake
    • None
    • Ubuntu 24.04.2, linux-g++ (x86_64), Compiler: gcc 13.3.0, CMake 3.28.3
    • Linux/X11
    • 7542aaea6 (dev), a20a40095 (dev), c39a3edb5 (6.10), f35f45642 (6.10), d5b3018c1 (6.9), e54bd7213 (6.9), 3e82d2a26 (tqtc/lts-6.8), 35e2baa4f (tqtc/lts-6.8)

    Description

      Without https://codereview.qt-project.org/c/qt/qtbase/+/648232 applied I get this error:

      CMake Error at cmake/QtFlagHandlingHelpers.cmake:183 (message):
        Platform linker doesn't support erroring upon encountering undefined
        symbols.  Target:"Core".
      Call Stack (most recent call first):
        cmake/QtModuleHelpers.cmake:898 (qt_internal_add_link_flags_no_undefined)
        src/corelib/CMakeLists.txt:30 (qt_internal_add_module)
      

      when configuring with -DFEATURE_sanitize_thread=ON:

      -DCMAKE_BUILD_TYPE=Debug -DFEATURE_developer_build=ON -DQT_BUILD_TESTS=ON -DQT_BUILD_TESTS_BY_DEFAULT=OFF -DQT_BUILD_EXAMPLES=ON -DQT_BUILD_EXAMPLES_BY_DEFAULT=OFF -DWARNINGS_ARE_ERRORS=OFF -DFEATURE_sanitize_address=ON -DFEATURE_sanitize_thread=ON
      

      With https://codereview.qt-project.org/c/qt/qtbase/+/648232 applied, I then get:

      ERROR: detected a std::atomic implementation that fails for function pointers.  Please apply the patch corresponding to your Standard Library vendor, found in qtbase/config.tests/atomicfptr
      
      CMake Error at cmake/QtBuildInformation.cmake:240 (message):
        Check the configuration messages for an error that has occurred.
      Call Stack (most recent call first):
        cmake/QtBuildInformation.cmake:59 (qt_configure_print_summary)
        cmake/QtBuildRepoHelpers.cmake:393 (qt_print_feature_summary)
        cmake/QtBaseHelpers.cmake:287 (qt_build_repo_end)
        CMakeLists.txt:36 (qt_internal_qtbase_build_repo)
      

      However, there is no atomicfptr on my machine:

      mitch@mitch-ubuntu:~/dev$ ls qtbase/config.tests
      arch  armintrin  binary_for_strip  cmake_zstd  cxa_thread_atexit  loongarch_simd  no_direct_extern_access  separate_debug_info  static_link_order  verifyspec  x86intrin  x86_simd
      

      Attachments

        1. CMakeConfigureLog.yaml
          256 kB
        2. CMakeCache.txt
          339 kB
        3. CMakeConfigureLog-1.yaml
          254 kB
        4. config_debug.txt
          84 kB
        5. cmake_trace.7z
          37 kB

        Issue Links

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

          Activity

            People

              qtbuildsystem Qt Build System Team
              mitch_curtis Mitch Curtis
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: