I'm receiving the following error when trying to build a project that uses bootloader as a dependency:
error: linking with `rust-lld` failed: exit status: 1
|
= note: "rust-lld" "-flavor" "link" "/NOLOGO" "/entry:efi_main" "/subsystem:efi_application" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/bootloader-x86_64-uefi/994cc9906dd1def5/out/rustcF06imu/symbols.o" "<4 object files omitted>" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/serde-json-core/e40353e9c4c6024b/out/libserde_json_core-e40353e9c4c6024b.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/ryu/7ff792136f0eb661/out/libryu-7ff792136f0eb661.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/heapless/e215a966a7ff0f21/out/libheapless-e215a966a7ff0f21.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/stable_deref_trait/9f9535932f1a1106/out/libstable_deref_trait-9f9535932f1a1106.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/spin/e7258a34f0dca36c/out/libspin-e7258a34f0dca36c.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/hash32/7a07d78849cb1189/out/libhash32-7a07d78849cb1189.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/byteorder/8295cf06fe27aa3f/out/libbyteorder-8295cf06fe27aa3f.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/uefi/a9e057b015f82fde/out/libuefi-a9e057b015f82fde.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/ucs2/079ed91c590fe4a4/out/libucs2-079ed91c590fe4a4.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/ptr_meta/2d35ab8eb1671d94/out/libptr_meta-2d35ab8eb1671d94.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/uefi-raw/1855ef487fbcee56/out/libuefi_raw-1855ef487fbcee56.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/uguid/fed1f1d1f182bd43/out/libuguid-fed1f1d1f182bd43.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/bootloader-x86_64-common/6d377500dbfcc9e6/out/libbootloader_x86_64_common-6d377500dbfcc9e6.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/uart_16550/789370088161ea34/out/libuart_16550-789370088161ea34.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/x86/549c686a6f215b51/out/libx86-549c686a6f215b51.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/log/ad0d3ff47997bf29/out/liblog-ad0d3ff47997bf29.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/spinning_top/23943d4b6e133e8f/out/libspinning_top-23943d4b6e133e8f.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/lock_api/45c8e64231def2e4/out/liblock_api-45c8e64231def2e4.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/scopeguard/8356429cd7ff7fb8/out/libscopeguard-8356429cd7ff7fb8.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/conquer-once/cf515e582bacca68/out/libconquer_once-cf515e582bacca68.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/noto-sans-mono-bitmap/41914a6df5a24888/out/libnoto_sans_mono_bitmap-41914a6df5a24888.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/raw-cpuid/f7317aab59a01fc7/out/libraw_cpuid-f7317aab59a01fc7.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/bitflags/9e73a561178871dc/out/libbitflags-9e73a561178871dc.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/rand_hc/664c1ea01e5bb0b6/out/librand_hc-664c1ea01e5bb0b6.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/rand/443e6fdc885e5fc6/out/librand-443e6fdc885e5fc6.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/rand_core/0626e2bbca207119/out/librand_core-0626e2bbca207119.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/xmas-elf/b284ab101c7f142f/out/libxmas_elf-b284ab101c7f142f.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/zero/4b1f8d919fd9abe9/out/libzero-4b1f8d919fd9abe9.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/x86_64/6b4754253bc72c25/out/libx86_64-6b4754253bc72c25.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/volatile/0487326c0e639710/out/libvolatile-0487326c0e639710.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/bitflags/c48aef86280e6335/out/libbitflags-c48aef86280e6335.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/bit_field/38c3af30ac1a3e07/out/libbit_field-38c3af30ac1a3e07.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/usize_conversions/18ce94f9a0dd3f85/out/libusize_conversions-18ce94f9a0dd3f85.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/bootloader-boot-config/07584eda9c67956f/out/libbootloader_boot_config-07584eda9c67956f.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/serde/c0f652d4137363c2/out/libserde-c0f652d4137363c2.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/serde_core/63d71f7a4a1f0829/out/libserde_core-63d71f7a4a1f0829.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/bootloader_api/01906b9ccff42021/out/libbootloader_api-01906b9ccff42021.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/core/5248b335eb12cf6c/out/libcore-5248b335eb12cf6c.rlib" "/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/compiler_builtins/3440346469431d52/out/libcompiler_builtins-3440346469431d52.rlib" "/NXCOMPAT" "/OUT:/tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/bootloader-x86_64-uefi/994cc9906dd1def5/out/bootloader_x86_64_uefi.efi" "/OPT:REF,ICF" "/DEBUG" "/PDBALTPATH:%_PDB%" "/NODEFAULTLIB"
= note: some arguments are omitted. use `--verbose` to show all linker arguments
= note: rust-lld: error: undefined symbol: wcslen
>>> referenced by /tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/bootloader-x86_64-uefi/994cc9906dd1def5/out/bootloader_x86_64_uefi.bootloader_x86_64_uefi.ea31791271ffb667-cgu.1.rcgu.o:(<uefi::proto::media::file::regular::RegularFile as uefi::proto::media::file::File>::get_info::<uefi::proto::media::file::info::FileInfo>)
>>> referenced by /tmp/cargo-installn9Qvo9/x86_64-unknown-uefi/release/build/bootloader-x86_64-uefi/994cc9906dd1def5/out/bootloader_x86_64_uefi.bootloader_x86_64_uefi.ea31791271ffb667-cgu.2.rcgu.o:(<uefi::proto::media::file::info::FileInfo as uefi::proto::media::file::info::FromUefi>::from_uefi)
>>> referenced by libuefi-a9e057b015f82fde.rlib(uefi-a9e057b015f82fde.uefi.fd3e7505b748215d-cgu.6.rcgu.o):(<uefi::proto::shell::Shell>::current_dir)
>>> referenced 9 more times
Building the same project has worked just fine in the past. I'm not sure what happened that caused it to break ; I've used a cached version of the resulting .img version for a while.
It's now consistently broken across three machines. I've tried running cargo clean and cargo update, with no change to this error message.
More details about my system/setup:
$ cargo tree -i bootloader
bootloader v0.11.17
$ rustup update
info: syncing channel updates for nightly-x86_64-unknown-linux-gnu
nightly-x86_64-unknown-linux-gnu unchanged - rustc 1.99.0-nightly (969b803cb 2026-08-09)
info: checking for self-update (current version: 1.29.0)
info: cleaning up downloads & tmp directories
$ rustc --version
rustc 1.99.0-nightly (969b803cb 2026-08-09)
$ cargo --version
cargo 1.99.0-nightly (b07e5a086 2026-08-07)
Please tell me if you need more information from my side. Given that no other issue exists and the problem started to appear on my first system a few days ago, it's probably something being broken on my side. However, I have no idea where or what to check at this point. Thanks for any suggestion!
I'm receiving the following error when trying to build a project that uses
bootloaderas a dependency:Building the same project has worked just fine in the past. I'm not sure what happened that caused it to break ; I've used a cached version of the resulting
.imgversion for a while.It's now consistently broken across three machines. I've tried running
cargo cleanandcargo update, with no change to this error message.More details about my system/setup:
Please tell me if you need more information from my side. Given that no other issue exists and the problem started to appear on my first system a few days ago, it's probably something being broken on my side. However, I have no idea where or what to check at this point. Thanks for any suggestion!