3 ms·
> will be more or less identical What could cause differences between the bootstrapped rustc and rustup’s?
by nequo 2y ago
> will be more or less identical
What could cause differences between the bootstrapped rustc and rustup’s?
- comex 2y agoIn theory there shouldn’t be any. The official Rust builds, I believe, have one level of bootstrapping: the previous official build is used to build an intermediate build of the current version, which is then used to build itself. So the distributed binaries are the current version built with the current version. A longer from-source bootstrapping process should also end by building the current version with the current version, and that should lead to a bit-for-bit identical result. In practice, you’ll have to make sure the build configuration, the toolchain components not part of rustc itself (e.g. linker), and the target sysroot (e.g. glibc .so file) are close or identical to what the official builds are using. Also, while rustc is supposed to be reproducible, and thus free of the other usual issues with reproducible builds (like paths or timestamps being embedded into the build), there might be bugs. And I’m not sure if reproducibility requires any special options which the official builders might not be passing. Hopefully not. See also: https://github.com/rust-lang/rust/issues/75362 https://github.com/rust-lang/rust/issues/75362