Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Linking against libpanic_unwind failed on macos due to lib.rmeta being unrecognizable by ld #107252

Closed
NobodyXu opened this issue Jan 24, 2023 · 3 comments
Labels
A-linkage Area: linking into static, shared libraries and binaries C-bug Category: This is a bug. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@NobodyXu
Copy link
Contributor

The CI of jobslot failed when linking against libpanic_unwind on macos:

  = note: ld: in /Users/runner/.rustup/toolchains/1.52-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libpanic_unwind-2fe2b8cd4fa63c34.rlib(lib.rmeta), archive member 'lib.rmeta' with length 35552 is not mach-o or llvm bitcode file '/Users/runner/.rustup/toolchains/1.52-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libpanic_unwind-2fe2b8cd4fa63c34.rlib'
          clang: error: linker command failed with exit code 1 (use -v to see invocation)

Meta

cargo toolchain installed via rustup:

1.52-x86_64-apple-darwin

GHA runner info:

Current runner version: '2.300.2'
Operating System
  macOS
  12.6.2
  21G320
Runner Image
  Image: macos-12
  Version: 20230117.3
  Included Software: https://github.com/actions/runner-images/blob/macOS-12/20230117.3/images/macos/macos-12-Readme.md
  Image Release: https://github.com/actions/runner-images/releases/tag/macOS-12%2F20230117.3
Runner Image Provisioner
  2.0.98.1
@NobodyXu NobodyXu added the C-bug Category: This is a bug. label Jan 24, 2023
@inquisitivecrystal inquisitivecrystal added A-linkage Area: linking into static, shared libraries and binaries T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Jan 24, 2023
@NobodyXu
Copy link
Contributor Author

This error seems to also happen in sagebind/castaway#11

Stebalien added a commit to Stebalien/tempfile that referenced this issue Feb 25, 2023
Macos 1.48.0 is failing right
now (rust-lang/rust#107252).
@bjorn3
Copy link
Member

bjorn3 commented May 20, 2023

Duplicate of #105167

tl;dr: XCode 14 broke rustc 1.53 and older. You have to update to at least rustc 1.54 or downgrade to XCode 13 or older.

@NobodyXu
Copy link
Contributor Author

@bjorn3 Thanks, I've already bumped it to 1.56 as required by windows-sys 0.48

Thomasdezeeuw added a commit to Thomasdezeeuw/mio that referenced this issue Aug 13, 2023
According to rust-lang/rust#105167 and
rust-lang/rust#107252 (comment),
Xcode 14 broke support for rustc < 1.53.
Thomasdezeeuw added a commit to tokio-rs/mio that referenced this issue Aug 13, 2023
According to rust-lang/rust#105167 and
rust-lang/rust#107252 (comment),
Xcode 14 broke support for rustc < 1.53.
Thomasdezeeuw added a commit to Thomasdezeeuw/mio that referenced this issue Aug 13, 2023
According to rust-lang/rust#105167 and
rust-lang/rust#107252 (comment),
Xcode 14 broke support for rustc < 1.53.

Backport of commit 8dd37c5.
Thomasdezeeuw added a commit to tokio-rs/mio that referenced this issue Aug 13, 2023
According to rust-lang/rust#105167 and
rust-lang/rust#107252 (comment),
Xcode 14 broke support for rustc < 1.53.

Backport of commit 8dd37c5.
quark-zju added a commit to quark-zju/rust-cpython that referenced this issue Jul 1, 2024
Drop Python 2.7, as it is no longer available:

    Warning: The support for python 2.7 will be removed on June 19. Related issue: actions/setup-python#672
    Version 2.7 was not found in the local cache
    Error: The version '2.7' with architecture 'x64' was not found for Ubuntu 22.04.
    The list of all available versions can be found here: https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json

Add Python 3.12 as its support was just added.

Fork macOS steps from Linux due to the ARM arch change:

- Rust 1.41 does not have a `aarch64-apple-darwin` version. The first Rust
  version that supports `aarch64-apple-darwin` is 1.49.0.
- Python 3.7 to 3.10 do not have a macOS ARM version in CI.
- Rust < 1.54 will fail on CI. See also See rust-lang/rust#107252:

    error: linking with `cc` failed: exit status: 1
    |
    = note: "cc" "-arch" "arm64" "-L" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.0.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.1.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.10.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.11.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.12.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.13.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.14.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.15.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.2.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.3.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.4.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.5.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.6.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.7.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.8.rcgu.o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.build_script_build.f402nxks-cgu.9.rcgu.o" "-o" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/build/memchr-30eba211f26bbb03/build_script_build-30eba211f26bbb03.1dr67yq0qjg3o93v.rcgu.o" "-Wl,-dead_strip" "-nodefaultlibs" "-L" "/Users/runner/work/rust-cpython/rust-cpython/target/debug/deps" "-L" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libstd-dd5aba3397285ad0.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libpanic_unwind-cb187f1a5b379d1a.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libobject-d263574460ac0b7b.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libaddr2line-0a9a23101265d9a7.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libgimli-e6457880b831342b.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libstd_detect-9590d4ced205b108.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/librustc_demangle-a1f4d95a4a2cc2a3.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libhashbrown-dbf1072a4ef077a4.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/librustc_std_workspace_alloc-7ff002204e919c46.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libunwind-a2049ddc023c32b9.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libcfg_if-02cf13a7707ef825.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/liblibc-e628929d2a4d215f.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/liballoc-1f245a76196b996b.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/librustc_std_workspace_core-49a44db0ac13b7f4.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libcore-a04810d031c48fa4.rlib" "/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libcompiler_builtins-7cd54448073dfb2c.rlib" "-lSystem" "-lresolv" "-lc" "-lm" "-liconv"
    = note: ld: multiple errors: archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libstd-dd5aba3397285ad0.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libpanic_unwind-cb187f1a5b379d1a.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libobject-d263574460ac0b7b.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libaddr2line-0a9a23101265d9a7.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libgimli-e6457880b831342b.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libstd_detect-9590d4ced205b108.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/librustc_demangle-a1f4d95a4a2cc2a3.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libhashbrown-dbf1072a4ef077a4.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/librustc_std_workspace_alloc-7ff002204e919c46.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libunwind-a2049ddc023c32b9.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libcfg_if-02cf13a7707ef825.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/liblibc-e628929d2a4d215f.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/liballoc-1f245a76196b996b.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/librustc_std_workspace_core-49a44db0ac13b7f4.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libcore-a04810d031c48fa4.rlib'; archive member 'lib.rmeta' not a mach-o file in '/Users/runner/.rustup/toolchains/1.53.0-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libcompiler_builtins-7cd54448073dfb2c.rlib'
            clang: error: linker command failed with exit code 1 (use -v to see invocation)
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
A-linkage Area: linking into static, shared libraries and binaries C-bug Category: This is a bug. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

3 participants