Repository navigation
Regression: "rust-lld: error: undefined symbol: Rlog1p" #150663
Copy link
Copy link
Open
Labels
A-linkersArea: linkers... you gotta love linkersArea: linkers... you gotta love linkersC-bugCategory: This is a bug.Category: This is a bug.E-needs-investigationCall for participation: This issues needs some investigation to determine current statusCall for participation: This issues needs some investigation to determine current statusP-lowLow priorityLow priorityS-needs-reproStatus: This issue has no reproduction and needs a reproduction to make progress.Status: This issue has no reproduction and needs a reproduction to make progress.T-infraRelevant to the infrastructure team, which will review and decide on the PR/issue.Relevant to the infrastructure team, which will review and decide on the PR/issue.regression-from-stable-to-stablePerformance or correctness regression from one stable version to another.Performance or correctness regression from one stable version to another.
Milestone
Description
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout] |
[INFO] [stdout] = note: "cc" "-m64" "/tmp/rustcIawPNl/symbols.o" "<2 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "/opt/rustwide/target/debug/deps/{liblibr-fb1f28c02835dd25,liblibc-21c65d3cecbb2f0e}.rlib" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libstd-*,libpanic_unwind-*,libobject-*,libmemchr-*,libaddr2line-*,libgimli-*,libcfg_if-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*,liblibc-*,librustc_std_workspace_core-*,liballoc-*,libcore-*,libcompiler_builtins-*}.rlib" "-Wl,-Bdynamic" "-lR" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-L" "/tmp/rustcIawPNl/raw-dylibs" "-B<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/bin/gcc-ld" "-fuse-ld=lld" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/usr/lib/R/lib" "-L" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/examples/01_embedded_print-fd7c93e7d624e282" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs" "-Wl,--export-dynamic" "-Wl,-Bsymbolic-functions" "-Wl,-z,relro"
[INFO] [stdout] = note: some arguments are omitted. use `--verbose` to show all linker arguments
[INFO] [stdout] = note: rust-lld: error: undefined symbol: Rlog1p
[INFO] [stdout] >>> referenced by math.rs:56 (src/math.rs:56)
[INFO] [stdout] >>> libr-fb1f28c02835dd25.libr.afc42f30ce0bac2d-cgu.0.rcgu.o:(libr::math::log1p::hf26b7710c6b32ad0) in archive /opt/rustwide/target/debug/deps/liblibr-fb1f28c02835dd25.rlib
[INFO] [stdout] collect2: error: ld returned 1 exit status
https://crater-reports.s3.amazonaws.com/beta-1.93-4/beta-2025-12-22/reg/libr-0.1.0/log.txt
Metadata
Metadata
Assignees
Labels
A-linkersArea: linkers... you gotta love linkersArea: linkers... you gotta love linkersC-bugCategory: This is a bug.Category: This is a bug.E-needs-investigationCall for participation: This issues needs some investigation to determine current statusCall for participation: This issues needs some investigation to determine current statusP-lowLow priorityLow priorityS-needs-reproStatus: This issue has no reproduction and needs a reproduction to make progress.Status: This issue has no reproduction and needs a reproduction to make progress.T-infraRelevant to the infrastructure team, which will review and decide on the PR/issue.Relevant to the infrastructure team, which will review and decide on the PR/issue.regression-from-stable-to-stablePerformance or correctness regression from one stable version to another.Performance or correctness regression from one stable version to another.
Activity
Noratrieb commentedon Jan 4, 2026
This crate is doing very strange things. Their build.rs is
Which, notably, only probes for the libraries existence, which doesn't actually link it.
They do link it via
#[link(name = "R")]in the source though.I cannot reproduce this error locally in a Debian 12 container. It builds fine for me when I have pkg-config and R (pkgs
r-base r-base-dev) installed. It errors in the build.rs when either pkg-config or R are missing.I ran
cargo test --no-runlike crater.My linker commandline was
Which contains the important
-lRthat links in R. The crater linker command from the error also contains it.I suspect that there's something strange going on with the crater env. It should have R installed https://github.com/rust-lang/crates-build-env/blob/9fbffe614e1a811d77ea91d65efaae306b0ba8ac/linux/packages.txt#L1088.
apiraino commentedon Jan 5, 2026
Unsure why we have this crate in our testsuite (or why was it included at the time) 🤔
Noratrieb commentedon Jan 5, 2026
The entire point of crater is to test all the crates :P
apiraino commentedon Jan 5, 2026
I cannot reproduce the issue as well (with the correct setup, as you point out) both on stable and beta. If these dependencies are a requirement as they always were, then I'm curious why the crater fails (runs
cargo test). Or if this is a new situation.3 remaining items
apiraino commentedon Jan 29, 2026
Assigning priority (discussion on Zulip).
@rustbot label -I-prioritize +P-high
theemathas commentedon Jan 30, 2026
libr currently does not compile at all on the crater for 1.94.0 beta, so it wasn't just flaky:
https://crater-reports.s3.amazonaws.com/beta-1.94-1/1.93.0/reg/libr-0.1.0/log.txt
https://crater-reports.s3.amazonaws.com/beta-1.94-1/beta-2026-01-20/reg/libr-0.1.0/log.txt
apiraino commentedon Feb 26, 2026
Is this still just a T-infra issue? trying to understand if we t-compiler need to look into it (release is next week)
theemathas commentedon Feb 26, 2026
It's probably T-infra, yeah. But impossible to know for sure without figuring out the root cause.
wesleywiser commentedon Feb 26, 2026
Visited during the compiler team triage meeting, we decided to mark this as P-low because the most likely explanation is that this is a result of a property of the crater environment rather than any kind of actual regression as the compiler is doing the correct operation, the linker is just failing to find the symbol for whatever reason.