Closed
Description
I tried this code:
main.rs:
fn main() {}
rustc -Clink-self-contained=off main.rs
I expected to see this happen: It should build
Instead, this happened:
error: linking with `cc` failed: exit status: 1
|
= note: LC_ALL="C" PATH="/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/bin:/home/han/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/opt/bin:/usr/lib/llvm/15/bin:/home/han/.local/bin:/home/han/go/bin" VSLANG="1033" "cc" "-m64" "/tmp/rustcDOkt7z/symbols.o" "main.main.8228077529f45d78-cgu.0.rcgu.o" "main.main.8228077529f45d78-cgu.1.rcgu.o" "main.main.8228077529f45d78-cgu.2.rcgu.o" "main.main.8228077529f45d78-cgu.3.rcgu.o" "main.main.8228077529f45d78-cgu.4.rcgu.o" "main.gsdr1cwoz34uplr.rcgu.o" "-Wl,--as-needed" "-L" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib" "-Wl,-Bstatic" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libstd-d8b731414c1987c5.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libpanic_unwind-082ef6e7ddd644e8.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libobject-c2d59b7eddb9395e.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libmemchr-c5fae2beedcf238f.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libaddr2line-be674a195bdb38ba.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libgimli-8981adfc9f969991.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/librustc_demangle-ffda94581f3ad8ac.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libstd_detect-23910715c40ebe07.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libhashbrown-e25b246ec6dfcca0.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/librustc_std_workspace_alloc-3192dd2fd2930ffe.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libminiz_oxide-b0237b09c82e7f53.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libadler-653c8164970b4878.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libunwind-ec8b51ffdda56362.rlib" "-lunwind" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libcfg_if-55f6802ac65c62c3.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/liblibc-4857c7eda487af99.rlib" "-lc" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/liballoc-7b4083a536540b3b.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/librustc_std_workspace_core-9e83db0936cfd878.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libcore-7940b050ca7b2e65.rlib" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libcompiler_builtins-8b06a6f9560b1ad8.rlib" "-Wl,-Bdynamic" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib" "-o" "main" "-Wl,--gc-sections" "-static-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
= note: ld.lld: error: undefined symbol: fstat64
>>> referenced by fs.rs:1057 (library/std/src/sys/unix/fs.rs:1057)
>>> std-d8b731414c1987c5.std.2c769fa08bcee5a9-cgu.0.rcgu.o:(std::fs::buffer_capacity_required::h4ee042adb5bad8d4) in archive /home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libstd-d8b731414c1987c5.rlib
>>> referenced by fs.rs:1057 (library/std/src/sys/unix/fs.rs:1057)
>>> std-d8b731414c1987c5.std.2c769fa08bcee5a9-cgu.0.rcgu.o:(std::backtrace_rs::symbolize::gimli::mmap::h4f287054a04eda31) in archive /home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libstd-d8b731414c1987c5.rlib
ld.lld: error: undefined symbol: lseek64
>>> referenced by fs.rs:1174 (library/std/src/sys/unix/fs.rs:1174)
>>> std-d8b731414c1987c5.std.2c769fa08bcee5a9-cgu.0.rcgu.o:(std::fs::buffer_capacity_required::h4ee042adb5bad8d4) in archive /home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libstd-d8b731414c1987c5.rlib
ld.lld: error: undefined symbol: stat64
>>> referenced by fs.rs:1558 (library/std/src/sys/unix/fs.rs:1558)
>>> std-d8b731414c1987c5.std.2c769fa08bcee5a9-cgu.0.rcgu.o:(std::fs::metadata::h77a51b3c4ad14f93) in archive /home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libstd-d8b731414c1987c5.rlib
>>> referenced by fs.rs:1558 (library/std/src/sys/unix/fs.rs:1558)
>>> std-d8b731414c1987c5.std.2c769fa08bcee5a9-cgu.0.rcgu.o:(std::sys::common::small_c_string::run_with_cstr_allocating::h67e0e8b897a01bbd) in archive /home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libstd-d8b731414c1987c5.rlib
>>> referenced by fs.rs:1558 (library/std/src/sys/unix/fs.rs:1558)
>>> std-d8b731414c1987c5.std.2c769fa08bcee5a9-cgu.0.rcgu.o:(std::backtrace_rs::symbolize::gimli::elf::debug_path_exists::hb4f37f14341fa65e) in archive /home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libstd-d8b731414c1987c5.rlib
ld.lld: error: undefined symbol: open64
>>> referenced by fs.rs:1038 (library/std/src/sys/unix/fs.rs:1038)
>>> std-d8b731414c1987c5.std.2c769fa08bcee5a9-cgu.0.rcgu.o:(std::sys::unix::fs::File::open_c::hbff52343617cc691) in archive /home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libstd-d8b731414c1987c5.rlib
>>> referenced by mod.rs:0 (library/std/src/sys/unix/mod.rs:0)
>>> std-d8b731414c1987c5.std.2c769fa08bcee5a9-cgu.0.rcgu.o:(std::sys::unix::fs::File::open_c::hbff52343617cc691) in archive /home/han/.rustup/toolchains/nightly-x86_64-unknown-linux-musl/lib/rustlib/x86_64-unknown-linux-musl/lib/libstd-d8b731414c1987c5.rlib
clang-15: error: linker command failed with exit code 1 (use -v to see invocation)
error: aborting due to previous error
Meta
rustc --version --verbose
:
rustc 1.71.0-nightly (f9a6b7158 2023-05-05)
binary: rustc
commit-hash: f9a6b71580cd53dd4491d9bb6400f7ee841d9c22
commit-date: 2023-05-05
host: x86_64-unknown-linux-musl
release: 1.71.0-nightly
LLVM version: 16.0.2
ldd --version
:
musl libc (x86_64)
Version 1.2.4
Dynamic Program Loader
Usage: ldd [options] [--] pathname