-
Notifications
You must be signed in to change notification settings - Fork 13.3k
FTBFS tarball rust 1.86.0: generated a symlink in a tarball: rust-lld #139477
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
Comments
Failed to upload "rust-1.86.0-FTBFS-build.log": |
cc @Kobzol: I think this has to do with the lld changes? |
The The last PR that touched this is #134437, but I'm not sure if that change could cause this problem. I don't know if we are supposed to take the host LLD and copy it into the distributed archives as |
100% agreed. |
Is that actually right? Does that break our targets that default to lld today? It seems like distros (who often use their own upstream llvm) having an inconsistent rustc layout to what we ship isn't great if it's avoidable. In general I'd not expect lld to be special - what do we do for libLLVM? Is that distributed under an external llvm build? Cc @cuviper |
That's decided in rust/src/bootstrap/src/core/build_steps/dist.rs Line 2099 in 990039e
|
Right, thanks. I think that we should do the same for LLD, and in particular forbid combining |
Disable combining LLD with external llvm-config When an external `llvm-config` is used, we don't really know anything about the external LLD, as we don't build it ourselves. Therefore, we probably shouldn't allow using `rust-lld` nor copy it to the target sysroot. Fixes: rust-lang#139477 CC `@cuviper` r? `@onur-ozkan`
Disable combining LLD with external llvm-config When an external `llvm-config` is used, we don't really know anything about the external LLD, as we don't build it ourselves. Therefore, we probably shouldn't allow using `rust-lld` nor copy it to the target sysroot. Fixes: rust-lang#139477 CC ``@cuviper`` r? ``@onur-ozkan``
Disable combining LLD with external llvm-config When an external `llvm-config` is used, we don't really know anything about the external LLD, as we don't build it ourselves. Therefore, we probably shouldn't allow using `rust-lld` nor copy it to the target sysroot. Fixes: rust-lang#139477 CC `@cuviper` r? `@onur-ozkan` try-job: dist-x86_64-linux try-job: dist-aarch64-linux
Disable combining LLD with external llvm-config When an external `llvm-config` is used, we don't really know anything about the external LLD, as we don't build it ourselves. Therefore, we probably shouldn't allow using `rust-lld` nor copy it to the target sysroot. Fixes: rust-lang#139477 CC `@cuviper` r? `@onur-ozkan` try-job: dist-x86_64-linux try-job: dist-aarch64-linux
Disable combining LLD with external llvm-config When an external `llvm-config` is used, we don't really know anything about the external LLD, as we don't build it ourselves. Therefore, we probably shouldn't allow using `rust-lld` nor copy it to the target sysroot. Fixes: rust-lang#139477 CC `@cuviper` r? `@onur-ozkan` try-job: dist-x86_64-linux try-job: dist-aarch64-linux
Rollup merge of rust-lang#139853 - Kobzol:lld-llvm-config, r=onur-ozkan Disable combining LLD with external llvm-config When an external `llvm-config` is used, we don't really know anything about the external LLD, as we don't build it ourselves. Therefore, we probably shouldn't allow using `rust-lld` nor copy it to the target sysroot. Fixes: rust-lang#139477 CC ``@cuviper`` r? ``@onur-ozkan`` try-job: dist-x86_64-linux try-job: dist-aarch64-linux
Disable combining LLD with external llvm-config When an external `llvm-config` is used, we don't really know anything about the external LLD, as we don't build it ourselves. Therefore, we probably shouldn't allow using `rust-lld` nor copy it to the target sysroot. Fixes: rust-lang/rust#139477 CC ``@cuviper`` r? ``@onur-ozkan`` try-job: dist-x86_64-linux try-job: dist-aarch64-linux
Summary
The bug is not reproducible on 1.85.1.
Built from a tarball: curl -O https://static.rust-lang.org/dist/rustc-1.86.0-src.tar.gz
[00:04:41] Copy/Link "/usr/bin/lld" to "/usr/src/RPM/BUILD/rust-1.86.0/build/x86_64-unknown-linux-gnu/stage1/lib/rustlib/x86_64-unknown-linux-gnu/bin/rust-lld"
[00:22:07] thread 'main' panicked at src/bootstrap/src/utils/tarball.rs:397:21:
[00:22:07] generated a symlink in a tarball: /usr/src/RPM/BUILD/rust-1.86.0/build/tmp/tarball/rustc/x86_64-unknown-linux-gnu/rustc-1.86.0-x86_64-unknown-linux-gnu/rustc/lib/rustlib/x86_64-unknown-linux-gnu/bin/rust-lld
Command used
All commands used are listed in the build log.
Bootstrap configuration (bootstrap.toml)
I didn't create it.
Operating system
ALT Linux Sisyphus.
HEAD
Built from a tarball.
Additional context
I am building an RPM package, I am the maintainer of the rust package in ALT Linux.
The text was updated successfully, but these errors were encountered: