void-linux / void-packages

The Void source packages collection
https://voidlinux.org
Other
2.59k stars 2.15k forks source link

xbps-src: bootstrap fails #51172

Closed rawhuul closed 4 months ago

rawhuul commented 4 months ago

Is this a new report?

Yes

System Info

Void 6.6.35_1 x86_64 GenuineIntel uptodate rF

Package(s) Affected

binutils-2.41

Does a report exist for this bug with the project's home (upstream) and/or another distro?

No response

Expected behaviour

During the bootstrap process, the binutils package encounters post-compilation failures that need to be resolved for successful bootstrap.

Actual behaviour

Screenshot from 2024-07-09 15-00-51

Steps to reproduce

  1. Clone the repo and cd into it
  2. Run ./xbps-src bootstrap
classabbyamp commented 4 months ago

are you sure you want to use bootstrap? typically you would want to use binary-bootstrap, which doesn't build every bootstrap package.

the error is not included in your screenshot. also please post the text log not a screenshot

rawhuul commented 4 months ago

Yes @classabbyamp, using bootstrap was intended. You can find logs here (I only included for binutils only)

classabbyamp commented 4 months ago
../../gold/compressed_output.cc:26:10: fatal error: zstd.h: No such file or directory
 26 | #include <zstd.h>
 | ^~~~~~~~
compilation terminated.
rawhuul commented 4 months ago

Cool, how come I overlooked it. So, bootstrap basically builds binutils first and fails as it depends on libzstd-devel, which will compile later. Right?

oreo639 commented 4 months ago

binary-bootstrap downloads the packages necessary for setting up a chroot. bootstrap builds the compiler and libraries necessary for setting up a chroot using the host system's compiler, tools, and libraries (with features missing, so that you can then build the compiler and libraries in a proper chroot with all supported features afterwords and use those for the chroot).

In this case, since you are building binutils outside of a working chroot is is trying to find libzstd from your machine, this is expected. You probably want ./xbps-src binary-bootstrap which pulls the packages from the repos and uses those to set up the chroot.

rawhuul commented 4 months ago

Okay, got it @oreo639

sgn commented 4 months ago

https://github.com/void-linux/void-packages/commit/5704c8e5608ad53a3538b0691794c3170f27a298