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

[icu] Regression - build fails for x64-linux-release #29322

Closed
Chlumsky opened this issue Jan 31, 2023 · 7 comments · Fixed by #29329
Closed

[icu] Regression - build fails for x64-linux-release #29322

Chlumsky opened this issue Jan 31, 2023 · 7 comments · Fixed by #29329
Labels
category:community-triplet A PR or issue related to community triplets not officially validated by the vcpkg team.

Comments

@Chlumsky
Copy link
Contributor

Host Environment

  • OS: Docker, debian:11-slim
  • Compiler: clang (current from apt)

To Reproduce

Steps to reproduce the behavior:

vcpkg --triplet x64-linux-release install icu

Failure logs

-- Installing x64-linux-release-rel
CMake Error at scripts/cmake/vcpkg_copy_tools.cmake:36 (message):
  Couldn't find tool "icupkg":

      "/opt/vcpkg/packages/icu_x64-linux-release/tools/icu/sbin/icupkg" does not exist
Call Stack (most recent call first):
  ports/icu/portfile.cmake:162 (vcpkg_copy_tools)
  scripts/ports.cmake:147 (include)

    vcpkg-tool version: 2023-01-24-8a88d63f241d391772fbde69af9cab96c3c64c75
    vcpkg-scripts version: b4f29c544 2023-01-30 (11 hours ago)
  • Cut and paste the appropriate build messages from the console output.
  • Attach every failure log file mentioned in the console output.

Additional context

Broken by #29196 / cdbcc03 @m-kuhn

The x64-linux-release is a "community triplet" but it is very useful to speed up automatic builds and CI.

@Chlumsky Chlumsky added the category:port-bug The issue is with a library, which is something the port should already support label Jan 31, 2023
@dg0yt
Copy link
Contributor

dg0yt commented Jan 31, 2023

This came almost expected: #29196 is incomplete without actually feeding the host tool paths into the build.

@Chlumsky I assume you don't set the host triplet to x64-linux-release, too. This would speed-up even more, and workaround the issue for a x64 linux machine.

@Chlumsky
Copy link
Contributor Author

Never heard of a "host triplet". So I should do it like vcpkg install --triplet x64-linux-release --host-triplet x64-linux-release install xy ?

@m-kuhn
Copy link
Contributor

m-kuhn commented Jan 31, 2023

Is #19726 not sufficient?

@dg0yt
Copy link
Contributor

dg0yt commented Jan 31, 2023

Never heard of a "host triplet". So I should do it like vcpkg install --triplet x64-linux-release --host-triplet x64-linux-release install xy ?

What should run of the host must come from the host triplet. If you only change the target triplet, you get a vcpkg cross-build. This may give you an extra full qtbase:x64-linux build if you ask for qtbase:x64-linux-release...

@dg0yt
Copy link
Contributor

dg0yt commented Jan 31, 2023

Is #19726 not sufficient?

I'm sorry, I didn't pay enough attention to the error message. The actual problem is a different spot than what I assumed:

# Install executables from /tools/icu/sbin to /tools/icu/bin on unix (/bin because icu require this for cross compiling)
if(VCPKG_TARGET_IS_LINUX OR VCPKG_TARGET_IS_OSX)
vcpkg_copy_tools(
TOOL_NAMES icupkg gennorm2 gencmn genccode gensprep
SEARCH_DIR "${CURRENT_PACKAGES_DIR}/tools/icu/sbin"
DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}/bin"
)
endif()

This is not guarded by the tools feature. And not covered in CI for cross-builds.

@m-kuhn
Copy link
Contributor

m-kuhn commented Feb 1, 2023

@Chlumsky can you test #29329 ?

@xiaozhuai
Copy link
Contributor

This problem also occured on x86_64 macos when building icu:arm64-osx.

m-kuhn added a commit to m-kuhn/vcpkg that referenced this issue Feb 6, 2023
@MonicaLiu0311 MonicaLiu0311 added category:community-triplet A PR or issue related to community triplets not officially validated by the vcpkg team. and removed category:port-bug The issue is with a library, which is something the port should already support labels Feb 7, 2023
@MonicaLiu0311 MonicaLiu0311 removed their assignment Feb 7, 2023
JavierMatosD pushed a commit that referenced this issue Feb 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:community-triplet A PR or issue related to community triplets not officially validated by the vcpkg team.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants