Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update cmake to 3.22.1 #21456

Closed
wants to merge 11 commits into from
Closed

Update cmake to 3.22.1 #21456

wants to merge 11 commits into from

Conversation

cenit
Copy link
Contributor

@cenit cenit commented Nov 16, 2021

CMake 3.21 has some problems with VS 17 2022 and CMake 3.22 is really mandatory to make the new IDE/compiler really shine

Biggest issues (for me):

Other fixed things:

Closes: #21060

@JackBoosY JackBoosY added the category:tool-update The issue is with build tool or build script, which requires update or should be executed correctly label Nov 17, 2021
@JackBoosY
Copy link
Contributor

We'd better don't use the RC version since they are unstable.

@cenit
Copy link
Contributor Author

cenit commented Nov 17, 2021

they are not so unstable, as kitware already pushes that for new users.
Also, they highlight future problems sooner, and that's the aim of this PR

@Neumann-A
Copy link
Contributor

Probable CMake error:

-- Found PkgConfig: D:/installed/x64-windows/tools/pkgconf/pkgconf.exe (found version "1.8.0") 
-- Checking for module 'botan-2'
CMake Error at D:/downloads/tools/cmake-3.22.0-rc3-windows/cmake-3.22.0-rc3-windows-i386/share/cmake-3.22/Modules/FindPkgConfig.cmake:123 (set):
  Syntax error in cmake code at

    D:/downloads/tools/cmake-3.22.0-rc3-windows/cmake-3.22.0-rc3-windows-i386/share/cmake-3.22/Modules/FindPkgConfig.cmake:123

  when parsing string

    D:/installed/x64-windows\lib

  Invalid character escape '\l'.
Call Stack (most recent call first):
  D:/downloads/tools/cmake-3.22.0-rc3-windows/cmake-3.22.0-rc3-windows-i386/share/cmake-3.22/Modules/FindPkgConfig.cmake:150 (_pkgconfig_set)
  D:/downloads/tools/cmake-3.22.0-rc3-windows/cmake-3.22.0-rc3-windows-i386/share/cmake-3.22/Modules/FindPkgConfig.cmake:923 (_pkgconfig_invoke)
  D:/downloads/tools/cmake-3.22.0-rc3-windows/cmake-3.22.0-rc3-windows-i386/share/cmake-3.22/Modules/FindPkgConfig.cmake:624 (pkg_get_variable)
  D:/downloads/tools/cmake-3.22.0-rc3-windows/cmake-3.22.0-rc3-windows-i386/share/cmake-3.22/Modules/FindPkgConfig.cmake:825 (_pkg_check_modules_internal)
  plugins/qca-botan/CMakeLists.txt:5 (pkg_check_modules)


-- Configuring incomplete, errors occurred!
See also "D:/buildtrees/qca/x64-windows-rel/CMakeFiles/CMakeOutput.log".
See also "D:/buildtrees/qca/x64-windows-rel/CMakeFiles/CMakeError.log".

@Neumann-A
Copy link
Contributor

It also shows that CMake 3.22 will automatically pick up pkgconf if it is installed.

qtshadertools: x64-linux:

-- Found XCB_XCB: /usr/lib/x86_64-linux-gnu/libxcb.so (found version "") 
-- Found XCB_GLX: /usr/lib/x86_64-linux-gnu/libxcb-glx.so (found version "") 
-- Checking for module 'xkbcommon-x11>=0.4.1'
--   Package 'xkbcommon-x11', required by 'virtual:world', not found
-- Checking for module 'xkbcommon-x11>=0.4.1'
--   Package 'xkbcommon-x11', required by 'virtual:world', not found
CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "PkgConfig::XKB_COMMON_X11" but the target was
  not found.  Perhaps a find_package() call is missing for an IMPORTED
  target, or an ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "XCB::ICCCM" but the target was not found.
  Perhaps a find_package() call is missing for an IMPORTED target, or an
  ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "XCB::IMAGE" but the target was not found.
  Perhaps a find_package() call is missing for an IMPORTED target, or an
  ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "XCB::KEYSYMS" but the target was not found.
  Perhaps a find_package() call is missing for an IMPORTED target, or an
  ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "XCB::RANDR" but the target was not found.
  Perhaps a find_package() call is missing for an IMPORTED target, or an
  ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "XCB::RENDER" but the target was not found.
  Perhaps a find_package() call is missing for an IMPORTED target, or an
  ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "XCB::RENDERUTIL" but the target was not
  found.  Perhaps a find_package() call is missing for an IMPORTED target, or
  an ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "XCB::SHAPE" but the target was not found.
  Perhaps a find_package() call is missing for an IMPORTED target, or an
  ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "XCB::SHM" but the target was not found.
  Perhaps a find_package() call is missing for an IMPORTED target, or an
  ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "XCB::SYNC" but the target was not found.
  Perhaps a find_package() call is missing for an IMPORTED target, or an
  ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "XCB::XFIXES" but the target was not found.
  Perhaps a find_package() call is missing for an IMPORTED target, or an
  ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "XCB::XKB" but the target was not found.
  Perhaps a find_package() call is missing for an IMPORTED target, or an
  ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "Qt6::OpenGLPrivate" but the target was not
  found.  Perhaps a find_package() call is missing for an IMPORTED target, or
  an ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "X11::XCB" but the target was not found.
  Perhaps a find_package() call is missing for an IMPORTED target, or an
  ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "XCB::XINPUT" but the target was not found.
  Perhaps a find_package() call is missing for an IMPORTED target, or an
  ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:154 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)

did the module change in CMake? Is the VM missing the module?

# Additionally required by qt5-base for qt5-x11extras
APT_PACKAGES="$APT_PACKAGES libxkbcommon-dev libxcb-keysyms1-dev \
  libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync0-dev \
  libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev \
  libxcb-render-util0-dev libxcb-xinerama0-dev libxcb-xkb-dev libxcb-xinput-dev"
APT_PACKAGES="at curl unzip tar libxt-dev gperf libxaw7-dev cifs-utils \
  build-essential g++ gfortran zip libx11-dev libxkbcommon-x11-dev libxi-dev \
  libgl1-mesa-dev libglu1-mesa-dev mesa-common-dev libxinerama-dev libxxf86vm-dev \
  libxcursor-dev yasm libnuma1 libnuma-dev python-six python3-six python-yaml \
  flex libbison-dev autoconf libudev-dev libncurses5-dev libtool libxrandr-dev \
  xutils-dev dh-autoreconf autoconf-archive libgles2-mesa-dev ruby-full \
  pkg-config meson"

hmm should be installed

@cenit cenit changed the title update cmake to 3.22.0-rc3 to verify catalogue compatibility and be ready for final release update cmake to 3.22.0 Nov 19, 2021
@cenit
Copy link
Contributor Author

cenit commented Nov 19, 2021

PR has been updated to final cmake 3.22 release

@BillyONeal
Copy link
Member

I feel kind of torn about this. Updating the version of cmake we use helps with new toolsets as you indicated, and updating ASAP is certainly in keeping with what we've done before. However, we've also recently had a lot of requests to deliver better support for arm64-linux and Alpine, and moving the cmake version forward really hurts them.

Perhaps we should consider having different expected cmake versions depending on the host?

@BillyONeal
Copy link
Member

did the module change in CMake? Is the VM missing the module?

hmm should be installed

Yeah the VMs are minted from images so it's unlikely that there will be differences coming from there.

@cenit
Copy link
Contributor Author

cenit commented Nov 20, 2021

I feel kind of torn about this. Updating the version of cmake we use helps with new toolsets as you indicated, and updating ASAP is certainly in keeping with what we've done before. However, we've also recently had a lot of requests to deliver better support for arm64-linux and Alpine, and moving the cmake version forward really hurts them.

Perhaps we should consider having different expected cmake versions depending on the host?

may i ask you why is it hurting them? cannot we just host cmake builds for architectures not distributed by kitware (see bsd also)?

@BillyONeal
Copy link
Member

may i ask you why is it hurting them? cannot we just host cmake builds for architectures not distributed by kitware (see bsd also)?

That would be... "legally interesting".

I suppose we should just take the update until such time we have Alpine actually working.

@dg0yt
Copy link
Contributor

dg0yt commented Nov 21, 2021

It might make sense to acknowledge that one cannot use the same version of cmake everywhere, even for portfiles.

@cenit
Copy link
Contributor Author

cenit commented Nov 22, 2021

That would be... "legally interesting".

wait, what? and how do you explain repositories hosting cmake binaries not on kitware servers? cmake is bsd3, right? am i missing something?

@cenit
Copy link
Contributor Author

cenit commented Nov 22, 2021

also, two points, besides the fact that i do not see any problem in building cmake for some extra platforms and distribute it:

  • as @dg0yt says, there is no reason to force same version to everybody, while at the same time i do not see any reason to not enable fixes to people that can enjoy them.
  • for such systems many times you cross compile… so really maybe i am missing something important? otherwise what’s the problem in enabling other platforms that can cross compile to arm64-musl to use cmake 3.22?

@dg0yt
Copy link
Contributor

dg0yt commented Nov 22, 2021

[OT] "Legally interesting" would be to reuse C++ source code from CMake (in particular for cross-platform support) instead of reinventing the wheel. This might improve the quality of both products instead of increasing the risk of one or the other tool breaking a platform. [/OT]

@cenit
Copy link
Contributor Author

cenit commented Nov 22, 2021

[OT] it would just need a clearer stance by microsoft on this project, abandon this CLA and it would almost be done [/OT]

@BillyONeal
Copy link
Member

It might make sense to acknowledge that one cannot use the same version of cmake everywhere, even for portfiles.

Well, the status quo is that we require the same version everywhere, and I don't want to upset that apple cart if I can avoid doing so.

That would be... "legally interesting".

wait, what? and how do you explain repositories hosting cmake binaries not on kitware servers? cmake is bsd3, right? am i missing something?

I don't know details, I just know that distributing any form of OSS we don't own requires a lot of legal review. That's one of the reasons vcpkg is designed to fetch from upstream sources rather than rehosting anything.

The dev team would really like to add rehosting of a number of problematic 3rd party dependencies (strawberry-perl for openssl anyone?) but it's expensive so we haven't gone there. Perhaps making Alpine a 1st class citizen will be the business justification we need to get the legal folks involved. :)

also, two points, besides the fact that i do not see any problem in building cmake for some extra platforms and distribute it:

  • as @dg0yt says, there is no reason to force same version to everybody, while at the same time i do not see any reason to not enable fixes to people that can enjoy them.

At the moment we block old versions in ports.cmake with a cmake_minimum_required call.

  • for such systems many times you cross compile… so really maybe i am missing something important? otherwise what’s the problem in enabling other platforms that can cross compile to arm64-musl to use cmake 3.22?

That may be the correct resolution.

I suppose we should just take the update until such time we have Alpine actually working.

Upon reflection for stare decisis reasons I think we should take the update as proposed by this PR regardless of potential future impact on Alpine until such time we have the end to end story for it actually working.

@BillyONeal
Copy link
Member

(Of course we need to make sure the catalog builds with the new version OK first; I observe there are a lot of outstanding broken ports in master already I'm looking at soon)

<exeRelativePath>cmake-3.22.0-linux-x86_64/bin/cmake</exeRelativePath>
<url>https://github.com/Kitware/CMake/releases/download/v3.22.0/cmake-3.22.0-linux-x86_64.tar.gz</url>
<sha512>048798c82890f79906e4e1a78f8494c30e0d2cec1a678d30b1e40e6684243d07512fae55e20e3e730d4d2ecaecfaa2b375e48f84c4f751861615ce94c8297b16</sha512>
<archiveName>cmake-3.22.0-linux-x86_64.tar.gz</archiveName>
</tool>
<tool name="cmake" os="freebsd">
<version>3.20.4</version>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that freebsd is still on CMake 3.20.4 here.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can't do anything about this, because the upstream does not continue to provide freebsd versions.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So vcpkg bootstrap is to download a version which is incompatible with vcpkg?

@cenit
Copy link
Contributor Author

cenit commented Nov 23, 2021

(Of course we need to make sure the catalog builds with the new version OK first; I observe there are a lot of outstanding broken ports in master already I'm looking at soon)

there are many more totally broken for people already using vs2022 if they are to get stuck on cmake 3.21

also, what's the point of this enforced consistency while we keep accepting and even preferring (on windows) system binaries for tools like cmake, ninja, etc?

@JackBoosY
Copy link
Contributor

Can this PR fix issue #21060?

@cenit
Copy link
Contributor Author

cenit commented Nov 25, 2021

Can this PR fix issue #21060?

yes

@JackBoosY JackBoosY added the depends:different-pr This PR or Issue depends on a PR which has been filed label Dec 23, 2021
@JackBoosY JackBoosY removed the depends:different-pr This PR or Issue depends on a PR which has been filed label Dec 29, 2021
@JackBoosY
Copy link
Contributor

JackBoosY commented Dec 30, 2021

  • qtshadertools:x64-linux:
CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "Qt6::XcbQpaPrivate" but the target was not
  found.  Perhaps a find_package() call is missing for an IMPORTED target, or
  an ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:192 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)


CMake Error at /agent/_work/1/s/scripts/buildsystems/vcpkg.cmake:540 (_add_executable):
  Target "qsb" links to target "Qt6::XcbQpaPrivate" but the target was not
  found.  Perhaps a find_package() call is missing for an IMPORTED target, or
  an ALIAS target is missing?
Call Stack (most recent call first):
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6Core/Qt6CoreMacros.cmake:559 (add_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtExecutableHelpers.cmake:22 (_qt_internal_create_executable)
  /mnt/vcpkg-ci/installed/x64-linux/share/Qt6/QtToolHelpers.cmake:192 (qt_internal_add_executable)
  tools/qsb/CMakeLists.txt:8 (qt_internal_add_tool)

cc @Neumann-A

  • hidapi:x64-linux:
CMake Error at /mnt/vcpkg-ci/downloads/tools/cmake-3.22.1-linux/cmake-3.22.1-linux-x86_64/share/cmake-3.22/Modules/FindPkgConfig.cmake:603 (message):
  A required package was not found
Call Stack (most recent call first):
  /mnt/vcpkg-ci/downloads/tools/cmake-3.22.1-linux/cmake-3.22.1-linux-x86_64/share/cmake-3.22/Modules/FindPkgConfig.cmake:825 (_pkg_check_modules_internal)
  linux/CMakeLists.txt:12 (pkg_check_modules)

Related code:

include(FindPkgConfig)
pkg_check_modules(libudev REQUIRED IMPORTED_TARGET libudev)

I can't repro this on my machine.

  • python2:x64-osx:
install: mkdir /Users/vagrant/Data/packages/python2_x64-osx/Users/vagrant/Data/installed/x64-osx/debug/lib: File exists
make: *** [altbininstall] Error 71
make: *** Waiting for unfinished jobs....
*** WARNING: renaming "_locale" since importing it failed: dlopen(build/lib.macosx-11.5-x86_64-2.7/_locale.so, 2): Symbol not found: _libintl_bindtextdomain
  Referenced from: build/lib.macosx-11.5-x86_64-2.7/_locale.so
  Expected in: flat namespace
 in build/lib.macosx-11.5-x86_64-2.7/_locale.so
ld: framework not found QuickTime
clang: error: linker command failed with exit code 1 (use -v to see invocation)
clang: warning: -framework Tk: 'linker' input unused [-Wunused-command-line-argument]
In file included from /Users/vagrant/Data/buildtrees/python2/src/Python-2-14b30226dc.clean/Modules/_tkinter.c:71:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/tk.h:86:11: fatal error: 'X11/Xlib.h' file not found
#       include <X11/Xlib.h>
                ^~~~~~~~~~~~
1 error generated.

Fixed by #22902.

  • urho3d:x64-osx:
[256/1107] : && /Library/Developer/CommandLineTools/usr/bin/cc -mtune=generic -fPIC -march=native -msse3 -pthread -Qunused-arguments -fcolor-diagnostics -Wno-argument-outside-range -g -DDEBUG -D_DEBUG -arch x86_64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX11.3.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names  Source/ThirdParty/Lua/CMakeFiles/lua_interpreter.dir/src/lua.c.o -o bin/lua  Source/ThirdParty/Lua/libLua.a  -lm  /Users/vagrant/Data/installed/x64-osx/debug/lib/libreadline.a && :
FAILED: bin/lua 
: && /Library/Developer/CommandLineTools/usr/bin/cc -mtune=generic -fPIC -march=native -msse3 -pthread -Qunused-arguments -fcolor-diagnostics -Wno-argument-outside-range -g -DDEBUG -D_DEBUG -arch x86_64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX11.3.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names  Source/ThirdParty/Lua/CMakeFiles/lua_interpreter.dir/src/lua.c.o -o bin/lua  Source/ThirdParty/Lua/libLua.a  -lm  /Users/vagrant/Data/installed/x64-osx/debug/lib/libreadline.a && :
Undefined symbols for architecture x86_64:
  "_BC", referenced from:
      __rl_init_terminal_io in libreadline.a(terminal.c.o)
  "_PC", referenced from:
      __rl_init_terminal_io in libreadline.a(terminal.c.o)
  "_UP", referenced from:
      __rl_init_terminal_io in libreadline.a(terminal.c.o)
  "_tgetent", referenced from:
      __rl_init_terminal_io in libreadline.a(terminal.c.o)
  "_tgetflag", referenced from:
      __rl_init_terminal_io in libreadline.a(terminal.c.o)
  "_tgetnum", referenced from:
      __rl_get_screen_size in libreadline.a(terminal.c.o)
  "_tgetstr", referenced from:
      _get_term_capabilities in libreadline.a(terminal.c.o)
  "_tgoto", referenced from:
      _open_some_spaces in libreadline.a(display.c.o)
      _delete_chars in libreadline.a(display.c.o)
  "_tputs", referenced from:
      __rl_backspace in libreadline.a(terminal.c.o)
      __rl_cr in libreadline.a(terminal.c.o)
      _rl_ding in libreadline.a(terminal.c.o)
      __rl_standout_on in libreadline.a(terminal.c.o)
      __rl_standout_off in libreadline.a(terminal.c.o)
      __rl_enable_meta_key in libreadline.a(terminal.c.o)
      __rl_disable_meta_key in libreadline.a(terminal.c.o)
      ...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

PR: #22321

  • sdformat9:windows:
[4/220] C:\PROGRA~2\MICROS~3\2019\ENTERP~1\VC\Tools\MSVC\1429~1.301\bin\Hostx64\x64\cl.exe   /TP -DTIXML_USE_STL -DWINDOWS_LEAN_AND_MEAN -D_USE_MATH_DEFINES -Dsdformat9_EXPORTS -DBUILDING_DLL -ID:\buildtrees\sdformat9\src\mat9_9.4.0-e90e994b02.clean\test\gtest\include -ID:\buildtrees\sdformat9\src\mat9_9.4.0-e90e994b02.clean\src\win\tinyxml -ID:\buildtrees\sdformat9\src\mat9_9.4.0-e90e994b02.clean\include -ID:\buildtrees\sdformat9\x64-windows-dbg -ID:\buildtrees\sdformat9\x64-windows-dbg\include -external:I D:\installed\x64-windows\include\ignition\math6 -external:W0 /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1  /W4 /EHsc /wd4068 /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1  -std:c++17 /showIncludes /Fosrc\CMakeFiles\sdformat9.dir\parser_urdf.cc.obj /Fdsrc\CMakeFiles\sdformat9.dir\ /FS -c D:\buildtrees\sdformat9\src\mat9_9.4.0-e90e994b02.clean\src\parser_urdf.cc
FAILED: src/CMakeFiles/sdformat9.dir/parser_urdf.cc.obj 
C:\PROGRA~2\MICROS~3\2019\ENTERP~1\VC\Tools\MSVC\1429~1.301\bin\Hostx64\x64\cl.exe   /TP -DTIXML_USE_STL -DWINDOWS_LEAN_AND_MEAN -D_USE_MATH_DEFINES -Dsdformat9_EXPORTS -DBUILDING_DLL -ID:\buildtrees\sdformat9\src\mat9_9.4.0-e90e994b02.clean\test\gtest\include -ID:\buildtrees\sdformat9\src\mat9_9.4.0-e90e994b02.clean\src\win\tinyxml -ID:\buildtrees\sdformat9\src\mat9_9.4.0-e90e994b02.clean\include -ID:\buildtrees\sdformat9\x64-windows-dbg -ID:\buildtrees\sdformat9\x64-windows-dbg\include -external:I D:\installed\x64-windows\include\ignition\math6 -external:W0 /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1  /W4 /EHsc /wd4068 /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1  -std:c++17 /showIncludes /Fosrc\CMakeFiles\sdformat9.dir\parser_urdf.cc.obj /Fdsrc\CMakeFiles\sdformat9.dir\ /FS -c D:\buildtrees\sdformat9\src\mat9_9.4.0-e90e994b02.clean\src\parser_urdf.cc
Microsoft (R) C/C++ Optimizing Compiler Version 19.29.30138 for x64
Copyright (C) Microsoft Corporation.  All rights reserved.

D:\buildtrees\sdformat9\src\mat9_9.4.0-e90e994b02.clean\src\parser_urdf.cc(30): fatal error C1083: Cannot open include file: 'urdf_model/model.h': No such file or directory

PR: #22367

@Neumann-A
Copy link
Contributor

qtshadertools:x64-linux:

looks like a missing dependency on a feature in qtbase

@BillyONeal
Copy link
Member

I pushed a merge with master because this build was waiting for now defunct mac agents

@BillyONeal BillyONeal changed the title update cmake to 3.22.1 Update cmake to 3.22.1 Feb 4, 2022
@JackBoosY
Copy link
Contributor

I wish I have time to fix the regressions.

@dg0yt
Copy link
Contributor

dg0yt commented Feb 5, 2022

This cmake version would really help to implemented features without patching, by CMAKE_FIND_PACKAGE_REQUIRED_<Pkg>.

@cenit
Copy link
Contributor Author

cenit commented Feb 5, 2022

I wish I have time to fix the regressions.

me too. i have no time even to update to cmake 3.22.2

@autoantwort
Copy link
Contributor

I have created #22998 to fix the osx pipeline

@Neumann-A
Copy link
Contributor

The problem with hidapi and qtbase is that both try to use pkgconf from vcpkg which is unable to find system dependencies since it is not part of the default search path. We need to find some way to ask pkg-config from the system for the correct default search paths.

@Neumann-A
Copy link
Contributor

Pr can be closed

@cenit cenit closed this Feb 26, 2022
@cenit cenit deleted the dev/cenit/cmake322 branch February 26, 2022 10:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:tool-update The issue is with build tool or build script, which requires update or should be executed correctly
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[lapack-reference] build failure
6 participants