Skip to content
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

linking issue on Solaris - ld: fatal: unrecognized option --strip-debug #121381

Closed
psumbera opened this issue Feb 21, 2024 · 0 comments · Fixed by #121399
Closed

linking issue on Solaris - ld: fatal: unrecognized option --strip-debug #121381

psumbera opened this issue Feb 21, 2024 · 0 comments · Fixed by #121399
Labels
A-linkage Area: linking into static, shared libraries and binaries C-bug Category: This is a bug. O-solaris Operating system: Solaris T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@psumbera
Copy link
Contributor

psumbera commented Feb 21, 2024

While building Rust master branch on Solaris with new beta compiler from 2024-02-04 (9784a14) I get following error:

Building bootstrap
   Compiling libc v0.2.151
..
   Compiling termcolor v1.4.0
   Compiling home v0.5.9
error: linking with `gcc` failed: exit status: 1
  |
  = note: LC_ALL="C" PATH="/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/bin:/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/bin:/usr/gnu/bin/:/usr/bin" VSLANG="1033" "gcc" "-m64" "/tmp/rustcVudrFx/symbols.o" "/builds/psumbera/rust-lang-build/build/bootstrap/debug/build/serde_json-3d0a0f4e969b1971/build_script_build-3d0a0f4e969b1971.build_script_build.22f20d396b540307-cgu.0.rcgu.o" "/builds/psumbera/rust-lang-build/build/bootstrap/debug/build/serde_json-3d0a0f4e969b1971/build_script_build-3d0a0f4e969b1971.2nfbgxrvkxklbize.rcgu.o" "-Wl,-z,ignore" "-L" "/builds/psumbera/rust-lang-build/build/bootstrap/debug/deps" "-L" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib" "-Wl,-Bstatic" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libstd-9928786342ee8f0e.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libpanic_unwind-82e2fefe18f026cf.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libobject-c0b7b4100ea52d7a.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libmemchr-9f92b5e161242b5c.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libaddr2line-c97e97ed47cabe77.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libgimli-3ee598c57fa4a8fe.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/librustc_demangle-b9f4264552f8e9dc.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libstd_detect-b1f18a4f4581f203.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libhashbrown-167eeefb37a594f2.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/librustc_std_workspace_alloc-e69a34bb5b469969.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libminiz_oxide-e8ecd3fd30775672.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libadler-bb51104b5c71d37c.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libunwind-929c7e8ad513a12d.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libcfg_if-0539aff4cd5dd71d.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/liblibc-7f1958c646d5977f.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/liballoc-bd0653933ca12878.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/librustc_std_workspace_core-8173e93f72ebef81.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libcore-e825afa3781f99a6.rlib" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib/libcompiler_builtins-a913ffd08d993ff1.rlib" "-Wl,-Bdynamic" "-lsocket" "-lposix4" "-lpthread" "-lresolv" "-lgcc_s" "-lc" "-lm" "-lrt" "-lpthread" "-lsendfile" "-llgrp" "-L" "/builds/psumbera/rust-lang-build/build/x86_64-pc-solaris/stage0/lib/rustlib/x86_64-pc-solaris/lib" "-o" "/builds/psumbera/rust-lang-build/build/bootstrap/debug/build/serde_json-3d0a0f4e969b1971/build_script_build-3d0a0f4e969b1971" "-Wl,--strip-debug" "-nodefaultlibs"
  = note: ld: fatal: unrecognized option --strip-debug
          ld: fatal: use the '-z help' option for usage information
          collect2: error: ld returned 1 exit status

I was trying to bisect the issue in beta and it reports the issue comes from cargo update here 7e1e61a.

I haven't tried to bisect it further but it seems that it comes from this particuar cargo change rust-lang/cargo@bc53451 (rust-lang/cargo#13257).

Fix or workaround seems to be to apply similar changes as Illumos did some time ago here f3deac2. Particularly here:

if self.sess.target.os != "illumos" {
self.linker_arg("--strip-debug");
}

@rustbot rustbot added the needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. label Feb 21, 2024
@bjorn3 bjorn3 added O-solaris Operating system: Solaris C-bug Category: This is a bug. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. and removed needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. labels Feb 21, 2024
@jieyouxu jieyouxu added the A-linkage Area: linking into static, shared libraries and binaries label Feb 21, 2024
psumbera added a commit to psumbera/rust that referenced this issue Feb 21, 2024
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this issue Feb 21, 2024
…trochenkov

Solaris linker does not support --strip-debug

Fixes rust-lang#121381
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this issue Feb 21, 2024
…trochenkov

Solaris linker does not support --strip-debug

Fixes rust-lang#121381
@bors bors closed this as completed in a17211b Feb 22, 2024
rust-timer added a commit to rust-lang-ci/rust that referenced this issue Feb 22, 2024
Rollup merge of rust-lang#121399 - psumbera:solaris-strip-debug, r=petrochenkov

Solaris linker does not support --strip-debug

Fixes rust-lang#121381
cuviper pushed a commit to cuviper/rust that referenced this issue Mar 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-linkage Area: linking into static, shared libraries and binaries C-bug Category: This is a bug. O-solaris Operating system: Solaris T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants