Skip to content

make-bootstrap-tools: fix test to include libstdc++ -rpath#210752

Merged
trofi merged 1 commit intoNixOS:stagingfrom
trofi:make-bootstrap-tools-libstdcxx-rpath
Jan 15, 2023
Merged

make-bootstrap-tools: fix test to include libstdc++ -rpath#210752
trofi merged 1 commit intoNixOS:stagingfrom
trofi:make-bootstrap-tools-libstdcxx-rpath

Conversation

@trofi
Copy link
Contributor

@trofi trofi commented Jan 14, 2023

After #209054 we started moving libstdc++.so out of default glibc's paths. This exposed bootstrap tools build failure as:

$ nix build --no-link -f ./pkgs/stdenv/linux/make-bootstrap-tools.nix
...
>
.../bin/bar: error while loading shared libraries: libstdc++.so.6:
   cannot open shared object file: No such file or directory

Note that bootstrap itself did not break. The change only expands handcrafted -rpath entries.

Description of changes
Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 23.05 Release Notes (or backporting 22.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
    • (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • Fits CONTRIBUTING.md.

After NixOS#209054 we started moving
libstdc++.so out of default glibc's paths. This exposed bootstrap
tools build failure as:

    $ nix build --no-link -f ./pkgs/stdenv/linux/make-bootstrap-tools.nix
    ...
    >
    .../bin/bar: error while loading shared libraries: libstdc++.so.6:
       cannot open shared object file: No such file or directory

Note that bootstrap itself did not break. The change only expands
handcrafted `-rpath` entries.
@github-actions github-actions bot added the 6.topic: stdenv Standard environment label Jan 14, 2023
@ofborg ofborg bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux. labels Jan 14, 2023
@trofi trofi merged commit 9c0068c into NixOS:staging Jan 15, 2023
@trofi trofi deleted the make-bootstrap-tools-libstdcxx-rpath branch January 15, 2023 07:01
@ghost
Copy link

ghost commented Jan 15, 2023

Thank you for deduplicating those two branches of the code while you were doing this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: stdenv Standard environment 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant