cmake/setup-hook.sh: Don't skip build-RPATH#108496
Conversation
SuperSandro2000
left a comment
There was a problem hiding this comment.
This needs to go through staging.
👍 Currently stuck at building bluez with this anyway. |
|
Darwin stdenv still builds with this fyi |
Thanks for the heads up. I'll try to figure out what was my issue with the bluez build then we can move this forward. |
|
I marked this as stale due to inactivity. → More info |
|
After #123011 was merged I can build bluez and continue with this. |
405e616 to
7affe0c
Compare
|
For reference. The last attempt was reverted because of #15881 |
|
cc @ttuegel You once tried to drop the SKIP_BUILD_RPATH in 8ec5adc, which had to be reverted in d5d4606 because of a broken Darwin stdenv. I tried nixpkgs-review on this, but it requires downloading 128GB of stuff, so I just rebuilt the projects on a best effort basis and everything seems to work fine on x86_64-linux. |
|
Bisect says f7414e2 |
|
Metis hasnt been updated in nixpkgs since 2015 so either lets mark it broken or try updating it or set the cmake flag removed here for it @danshapero also @jtojnar due to him having created an issue in https://github.com/KarypisLab/METIS |
|
KarypisLab/METIS@521a2c3 fixed it |
|
Bisect says f7414e2 |
|
I can confirm that |
|
A few more RPATH-related failures:
|
|
files which still set LD_LIBRARY_PATH to pwd |
|
Skimming through
A few mor will probably pop up when qt fixes will get grabbed by hydra. |
|
A few more RPATH-related failures from
|
|
|
My program ( I don't know if this bug happens with other programs. How should I work around this problem? Notice how the Nixpkgs commit e1e0d5d (after this patch was merged): Nixpkgs commit de1ff46 (before this patch was merged): |
|
@strager sorry to hear that, I don't see why this change should have broken that. For now, you can manually revert to the old behavior on a per-package basis, which seems to fix the rpath: --- a/pkgs/development/tools/quick-lint-js/default.nix
+++ b/pkgs/development/tools/quick-lint-js/default.nix
@@ -15,6 +15,10 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ninja ];
doCheck = true;
+ cmakeFlags = [
+ "-DCMAKE_SKIP_BUILD_RPATH=ON"
+ ];Turning on |
i tried then added
Looking in to finding a proper fix |
Our Nix builds are broken due to upstream changes [1]. Disable the failing code for now to make CI green again. [1] NixOS/nixpkgs#108496
Our Nix builds are broken due to upstream changes [1]. Disable the failing code for now to make CI green again. [1] NixOS/nixpkgs#108496
quick-lint-js fails to run after installation:
$ quick-lint-js --version
quick-lint-js: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
Cause: NixOS#108496 (comment)
Work around this error.
quick-lint-js fails to run after installation:
$ quick-lint-js --version
quick-lint-js: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
Cause: NixOS/nixpkgs#108496 (comment)
Work around this error.
This workaround has landed in Nixpkgs upstream:
NixOS/nixpkgs#190091
Motivation for this change
This should simplify using
nix-shell -Aornix developto developCMake based projects. CMake features a mechanism to use a different
RPATH for all executables in the build directory and only rewrite these
RPATHs on installation. This makes it possible to run executables
already from the build directory without having to set LD_LIBRARY_PATH.
This should simplify the checkPhase for cmake based projects and
hopefully not break anything.
Fixes: #22060
Things done
sandboxinnix.confon non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"./result/bin/)nix path-info -Sbefore and after)