-
Notifications
You must be signed in to change notification settings - Fork 6.7k
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
qt5-webengine links many system libraries that it should get from vcpkg #36854
Comments
Is this problem specific to vcpkg deployed libraries or are the targets your project generates using The vcpkg libraries themselves don't contain location information because that data is stripped out of the libraries when they are packaged. RPATHs are counter-intuitive in packages, as they would describe a build agent's setup, but the setup they need to abide to is the deploy target's one instead. On systems supporting RPaths, cmake will instruct the linker to embed rpath data into each executable and library it emits. This will allow you to execute a binary linked against vcpkg provisioned libraries without having to override EDIT:
Project: https://github.com/PurpleFlowerGarden/vcpkg-sqlite-demo/tree/29c80a73aa49cd0fddac616a33134b028feeb9dd |
This is a problem with the qt5-webengine vcpkg port itself and doesn't involve my own project. Since opening this bug I have noticed that this problem is a known issue in the port, as is evident from this line: qt5-webengine/portfile.cmake:15. This comment is from commit bb7ccc4 but it does not provide a reason for why qt5-webengine should rely on system provided packages such as icu, and nss from the system rather than using vcpkg provided ports. I little bit more digging shows that the ports of nss and its dependency nspr are currently windows only and it looks from #21281 (comment) that this is just because no one has done the work yet to enable them on other platforms. I've also noticed that qt5-webengine is an experimental package: qt5-webengine/portfile.cmake:10. I'm new to Vcpkg and I'm currently just evaluating it (vs Conan), but I will see if I can find time to fix the qt5-webengine port on Linux so it doesn't require system provided libraries and hereunder make the nss and nspr ports work on Linux too. |
This is an automated message. Per our repo policy, stale issues get closed if there has been no activity in the past 180 days. The issue will be automatically closed in 14 days. If you wish to keep this issue open, please add a new comment. |
Describe the bug
qt5-webengine picks up many system libraries that it should get from vcpkg. It also picks up both vcpkg and system libraries of some libraries, at least in debug configuration where it links both system libfreetype.so.xx and libfreetyped.so.
Environment
To Reproduce
Steps to reproduce the behavior:
Repro code when
Expected behavior
Vcpkg should not link system versions of
Failure logs
The X11 and OpenGL libraries are fine to be system, but ICU, png, bz2, pcre2 and many other should not be picked up from the host system.
Additional context
Add any other context about the problem here.
The text was updated successfully, but these errors were encountered: