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

Remove rustc's dependency on LLVM 5 on Darwin. #87443

Closed
Gaelan opened this issue May 9, 2020 · 2 comments
Closed

Remove rustc's dependency on LLVM 5 on Darwin. #87443

Gaelan opened this issue May 9, 2020 · 2 comments
Labels
0.kind: bug 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md 6.topic: darwin Running or building packages on Darwin 6.topic: rust

Comments

@Gaelan
Copy link
Contributor

Gaelan commented May 9, 2020

Describe the bug
On Darwin, rustc depends on llvmPackages_5.stdenv. This isn't ideal, because it means that building rustc from source requires compiling LLVM an extra time, consuming a fair bit of time and disk space. I couldn't find any explanation for why we do this (I don't think upstream does it either), but removing that dependency seems to reveal that it's a workaround for a bug:

Building stage0 std artifacts (x86_64-apple-darwin -> x86_64-apple-darwin)
   Compiling cc v1.0.50
   Compiling core v0.0.0 (/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/src/libcore)
   Compiling libc v0.2.66
   Compiling autocfg v0.1.7
error: linking with `/nix/store/5wlahs4vx3iwxngps3gfaydbafpdgf5i-clang-wrapper-7.1.0/bin/cc` failed: signal: 9
  |
  = note: "/nix/store/5wlahs4vx3iwxngps3gfaydbafpdgf5i-clang-wrapper-7.1.0/bin/cc" "-m64" "-L" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.0.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.1.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.10.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.11.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.12.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.13.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.14.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.15.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.2.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.3.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.4.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.5.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.6.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.7.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.8.rcgu.o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.9.rcgu.o" "-o" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.4y05ruglt6m5xqfe.rcgu.o" "-Wl,-dead_strip" "-nodefaultlibs" "-L" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/deps" "-L" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libstd-861a2dddfff9db3f.rlib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libpanic_unwind-bf192f19d9586a96.rlib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libhashbrown-7fb130b48ff7a60f.rlib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/librustc_std_workspace_alloc-6c20051d2ca93f50.rlib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libbacktrace-673668563a649446.rlib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libbacktrace_sys-13985d3c1bb88da7.rlib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/librustc_demangle-94b59b6dcd2de45c.rlib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libunwind-dc47e9b466b1e19d.rlib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libcfg_if-b3a8ed5a8bf1c0dd.rlib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/liblibc-5668bf1c6fd447c3.rlib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/liballoc-59b01225524a1281.rlib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/librustc_std_workspace_core-ac10a601c405e3f2.rlib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libcore-342432bf18de5c4a.rlib" "/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libcompiler_builtins-e7c41ec2757bef93.rlib" "-lSystem" "-lresolv" "-lc" "-lm"
  = note: dyld: lazy symbol binding failed: Symbol not found: _LLVMInitializeAMDGPUTargetInfo
            Referenced from: /nix/store/gi2i0sdcr8p5lfddf3j7p66x0vkvkbhm-clang-7.1.0/bin/clang
            Expected in: /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/libLLVM.dylib
          
          dyld: Symbol not found: _LLVMInitializeAMDGPUTargetInfo
            Referenced from: /nix/store/gi2i0sdcr8p5lfddf3j7p66x0vkvkbhm-clang-7.1.0/bin/clang
            Expected in: /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/libLLVM.dylib
          
          Stack dump:
          0.    Program arguments: /nix/store/gi2i0sdcr8p5lfddf3j7p66x0vkvkbhm-clang-7.1.0/bin/clang -O2 -D_FORTIFY_SOURCE=2 -fstack-protector-strong --param ssp-buffer-size=4 -fno-strict-overflow -Wformat -Wformat-security -Werror=format-security -fPIC -m64 -L /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.0.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.1.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.10.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.11.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.12.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.13.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.14.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.15.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.2.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.3.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.4.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.5.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.6.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.7.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.8.rcgu.o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.build_script_build.7te2zy96-cgu.9.rcgu.o -o /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654 /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/build/libc-59442ff856b4d654/build_script_build-59442ff856b4d654.4y05ruglt6m5xqfe.rcgu.o -Wl,-dead_strip -nodefaultlibs -L /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/x86_64-apple-darwin/stage0-std/release/deps -L /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libstd-861a2dddfff9db3f.rlib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libpanic_unwind-bf192f19d9586a96.rlib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libhashbrown-7fb130b48ff7a60f.rlib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/librustc_std_workspace_alloc-6c20051d2ca93f50.rlib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libbacktrace-673668563a649446.rlib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libbacktrace_sys-13985d3c1bb88da7.rlib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/librustc_demangle-94b59b6dcd2de45c.rlib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libunwind-dc47e9b466b1e19d.rlib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libcfg_if-b3a8ed5a8bf1c0dd.rlib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/liblibc-5668bf1c6fd447c3.rlib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/liballoc-59b01225524a1281.rlib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/librustc_std_workspace_core-ac10a601c405e3f2.rlib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libcore-342432bf18de5c4a.rlib /nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib/rustlib/x86_64-apple-darwin/lib/libcompiler_builtins-e7c41ec2757bef93.rlib -lSystem -lresolv -lc -lm -B/nix/store/9vb0mdfnjyi8dq3cqfdrhzzwynkdicps-clang-7.1.0-lib/lib -resource-dir=/nix/store/5wlahs4vx3iwxngps3gfaydbafpdgf5i-clang-wrapper-7.1.0/resource-root -B/nix/store/yra78h52pynlz89c5ssx3534a61mjyk9-Libsystem-osx-10.12.6/lib/ -idirafter /nix/store/yra78h52pynlz89c5ssx3534a61mjyk9-Libsystem-osx-10.12.6/include -B/nix/store/5wlahs4vx3iwxngps3gfaydbafpdgf5i-clang-wrapper-7.1.0/bin/ -isystem /nix/store/q25qy9gndn7z973vriw1w9jx725203rf-file-5.38/include -Wno-deprecated-declarations -isystem /nix/store/zxgfqss03xih1qy7ivmkpbbzxzzam514-python3-3.7.7/include -isystem /nix/store/ilwkq1ziq569d2hpd2dxk7r14cn42c9w-libffi-3.3-dev/include -isystem /nix/store/ynjca2rq4czmfw7karf2qk38yfdjr033-libc++-7.1.0/include -isystem /nix/store/a469ns9ib3r845gqy2zwgadaw4ff9gfd-libc++abi-7.1.0/include -isystem /nix/store/9miidzlbc9419n1xgiwhidk7kb4bjn37-compiler-rt-7.1.0-dev/include -isystem /nix/store/fd81ldzg68shw85nmrhxi65qa6f7bdi8-openssl-1.1.1g-dev/include -iframework /nix/store/svsfy8kagqnlw4kd91vrriq9n8xk2h9i-apple-framework-Security/Library/Frameworks -iframework /nix/store/8vir8hnjannd7bjks92vy3c92j9qx2wn-apple-framework-IOKit/Library/Frameworks -isystem /nix/store/fzyd842bzhwygf2f41yq993b28pg0izy-llvm-9.0.1/include -isystem /nix/store/irbzih9lz0d7j3kxhivjjn52cmvbx16k-ncurses-6.2-dev/include -isystem /nix/store/fisk4j2i360fc8nq6zr77q685driaz0g-zlib-1.2.11-dev/include -iframework /nix/store/rvvzbmw0wcdk0pqj5qbqwzacw3469i8a-swift-corefoundation/Library/Frameworks -isystem /nix/store/q25qy9gndn7z973vriw1w9jx725203rf-file-5.38/include -isystem /nix/store/zxgfqss03xih1qy7ivmkpbbzxzzam514-python3-3.7.7/include -isystem /nix/store/ilwkq1ziq569d2hpd2dxk7r14cn42c9w-libffi-3.3-dev/include -isystem /nix/store/ynjca2rq4czmfw7karf2qk38yfdjr033-libc++-7.1.0/include -isystem /nix/store/a469ns9ib3r845gqy2zwgadaw4ff9gfd-libc++abi-7.1.0/include -isystem /nix/store/9miidzlbc9419n1xgiwhidk7kb4bjn37-compiler-rt-7.1.0-dev/include -isystem /nix/store/fd81ldzg68shw85nmrhxi65qa6f7bdi8-openssl-1.1.1g-dev/include -iframework /nix/store/svsfy8kagqnlw4kd91vrriq9n8xk2h9i-apple-framework-Security/Library/Frameworks -iframework /nix/store/8vir8hnjannd7bjks92vy3c92j9qx2wn-apple-framework-IOKit/Library/Frameworks -isystem /nix/store/fzyd842bzhwygf2f41yq993b28pg0izy-llvm-9.0.1/include -isystem /nix/store/irbzih9lz0d7j3kxhivjjn52cmvbx16k-ncurses-6.2-dev/include -isystem /nix/store/fisk4j2i360fc8nq6zr77q685driaz0g-zlib-1.2.11-dev/include -iframework /nix/store/rvvzbmw0wcdk0pqj5qbqwzacw3469i8a-swift-corefoundation/Library/Frameworks -Wl,-lc++ -Wl,-rpath -Wl,/nix/store/fzyd842bzhwygf2f41yq993b28pg0izy-llvm-9.0.1/lib -Wl,-macosx_version_min -Wl,10.12 -Wl,-sdk_version -Wl,10.12 -Wl,-no_uuid -L/nix/store/q25qy9gndn7z973vriw1w9jx725203rf-file-5.38/lib -L/nix/store/zxgfqss03xih1qy7ivmkpbbzxzzam514-python3-3.7.7/lib -L/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib -L/nix/store/dwrywawg9vrmcixsmmmmnnmbxnybq7xv-libffi-3.3/lib -L/nix/store/ynjca2rq4czmfw7karf2qk38yfdjr033-libc++-7.1.0/lib -L/nix/store/a469ns9ib3r845gqy2zwgadaw4ff9gfd-libc++abi-7.1.0/lib -L/nix/store/mp2xq5jg7xd6q75hwdgh9akvxvf86lya-compiler-rt-7.1.0/lib -L/nix/store/a6n4gx8sl6ahb7yf6cy8mqmlwg33iz86-openssl-1.1.1g/lib -L/nix/store/fzyd842bzhwygf2f41yq993b28pg0izy-llvm-9.0.1/lib -L/nix/store/930pfxxbsgmsl8qinbq3zl8q0y6f2id6-ncurses-6.2/lib -L/nix/store/aax9j24s2l2b8r54k1m9wdjvdj7zvnia-zlib-1.2.11/lib -L/nix/store/qgcim3i6wnawj4xnilhbwy8zg5b5fnw7-llvm-9.0.1-lib/lib -L/nix/store/q25qy9gndn7z973vriw1w9jx725203rf-file-5.38/lib -L/nix/store/zxgfqss03xih1qy7ivmkpbbzxzzam514-python3-3.7.7/lib -L/nix/store/hm9ljrpqsclh22n197wyj8vanh40mh72-rustc-bootstrap-1.41.0/lib -L/nix/store/dwrywawg9vrmcixsmmmmnnmbxnybq7xv-libffi-3.3/lib -L/nix/store/ynjca2rq4czmfw7karf2qk38yfdjr033-libc++-7.1.0/lib -L/nix/store/a469ns9ib3r845gqy2zwgadaw4ff9gfd-libc++abi-7.1.0/lib -L/nix/store/mp2xq5jg7xd6q75hwdgh9akvxvf86lya-compiler-rt-7.1.0/lib -L/nix/store/a6n4gx8sl6ahb7yf6cy8mqmlwg33iz86-openssl-1.1.1g/lib -L/nix/store/fzyd842bzhwygf2f41yq993b28pg0izy-llvm-9.0.1/lib -L/nix/store/930pfxxbsgmsl8qinbq3zl8q0y6f2id6-ncurses-6.2/lib -L/nix/store/aax9j24s2l2b8r54k1m9wdjvdj7zvnia-zlib-1.2.11/lib -L/nix/store/qgcim3i6wnawj4xnilhbwy8zg5b5fnw7-llvm-9.0.1-lib/lib -L/nix/store/yra78h52pynlz89c5ssx3534a61mjyk9-Libsystem-osx-10.12.6/lib -L/nix/store/9vb0mdfnjyi8dq3cqfdrhzzwynkdicps-clang-7.1.0-lib/lib -L/nix/store/ynjca2rq4czmfw7karf2qk38yfdjr033-libc++-7.1.0/lib 
          0  libLLVM.dylib            0x000000010e817fd8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 40
          1  libLLVM.dylib            0x000000010e816fb8 llvm::sys::RunSignalHandlers() + 248
          2  libLLVM.dylib            0x000000010e8185f9 SignalHandler(int) + 281
          3  libsystem_platform.dylib 0x00007fff703e15fd _sigtramp + 29
          4  libsystem_platform.dylib 0x000000011e297590 _sigtramp + 18446603343434047408
          5  libsystem_platform.dylib 0x000000011e29654f _sigtramp + 18446603343434043247
          6  libsystem_platform.dylib 0x000000011e293bd2 _sigtramp + 18446603343434032626
          7  libsystem_platform.dylib 0x000000011e21bb01 _sigtramp + 18446603343433540897
          8  libdyld.dylib            0x00007fff701e7692 dyld_stub_binder + 282
          9  clang                    0x000000010e151ad0 clang::StringLiteral::outputString(llvm::raw_ostream&) const::Hex + 99392
          10 clang                    0x000000010ca2f642 main + 226
          11 libdyld.dylib            0x00007fff701e8cc9 start + 1
          12 libdyld.dylib            0x0000000000000097 start + 18446603338635113423
          

error: aborting due to previous error

error: could not compile `libc`.
warning: build failed, waiting for other jobs to finish...
error: build failed
command did not execute successfully: "/nix/store/prjp0jhjag024c738a7cfr6q3ns17xp8-cargo-bootstrap-1.41.0/bin/cargo" "build" "-Zconfig-profile" "--target" "x86_64-apple-darwin" "-Zbinary-dep-depinfo" "-j" "4" "--release" "--frozen" "--features" "panic-unwind backtrace compiler-builtins-c" "--manifest-path" "/private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/src/libtest/Cargo.toml" "--message-format" "json-render-diagnostics"
expected success, got: exit code: 101
failed to run: /private/tmp/nix-build-rustc-1.42.0.drv-2/rustc-1.42.0-src/build/bootstrap/debug/bootstrap build --jobs 4
Build completed unsuccessfully in 0:07:22
make: *** [Makefile:18: all] Error 1
builder for '/nix/store/dandhjra3kkdk2rya3bgycj4k81n6lbg-rustc-1.42.0.drv' failed with exit code 2
error: build of '/nix/store/dandhjra3kkdk2rya3bgycj4k81n6lbg-rustc-1.42.0.drv' failed

The issue seems to be that something is causing clang from stdenv to dynamically link against a libLLVM downloaded from upstream for bootstrapping. Unsurprisingly, dynamically linking LLVM components from different builds together does not go well, and we crash.

Instead, stdenv's clang should be linking against its own libLLVM. How to actually make that happen is beyond my (fairly limited) Nix knowledge, unfortunately.

Notify maintainers
@madjar @cstrahan @globin @Havvy

Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.

# Ignore the Nixpkgs versions here—the research for this issue was done on Nixpkgs master
 - system: `"x86_64-darwin"`
 - host os: `Darwin 19.4.0, macOS 10.15.4`
 - multi-user?: `yes`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.3.3`
 - channels(root): `"darwin, home-manager, nixpkgs-20.09pre221814.10100a97c89"`
 - channels(gaelan): `"darwin, home-manager, nixpkgs-20.09pre221814.10100a97c89"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixpkgs`

Maintainer information:

# a list of nixpkgs attributes affected by the problem
attribute:
  - rustc
@doronbehar
Copy link
Contributor

To add to that, on Linux, rustc also depends on gcc-unwrapped:

$ nix why-depends nixpkgs.rustc nixpkgs.gcc-unwrapped
/nix/store/ji43wzf73rbcwlmar0zvfqfr8wb4arc9-rustc-1.42.0�[0m
╚═══lib/librustc_driver-f5aad44b88c1e003.so: …race_initialize.cold./nix/store/25g1sxj2fpyfrwfa3vzcplqbi2xnvjhw�[0m-gcc-9.3.0/lib/gcc/x86_64-unknow…
    => /nix/store/25g1sxj2fpyfrwfa3vzcplqbi2xnvjhw-gcc-9.3.0�[0m

@stale
Copy link

stale bot commented Nov 28, 2020

I marked this as stale due to inactivity. → More info

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Nov 28, 2020
@zowoq zowoq closed this as completed Apr 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0.kind: bug 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md 6.topic: darwin Running or building packages on Darwin 6.topic: rust
Projects
None yet
Development

No branches or pull requests

4 participants