Conversation
This comment was marked as outdated.
This comment was marked as outdated.
|
|
Failures on |
|
Do we know why we need to workaround this way? #445934 had no issue so maybe an update of some dep hit an edge case and we exposed an upstream bug.
With Rosetta you can do |
|
I would suspect that #407738, which changed the default LLVM from 19 to 21, might be the cause. Update: I can now confirm it's related — the build works fine with LLVM 19 without any patches. I suspect this is due to an LLVM version mismatch: the build uses libcxx 19 (from darwin stdenv), while LLVM 21 is provided as a runtime dependency. |
|
@alexfmpe Thanks for your help! I've built it with Rosetta. Here’s the error message on > nix log /nix/store/kyl4kf4zi6la53g6b602abj13xmy661b-ispc-1.28.2.drv | grep ".ispc failed" -B2 -A5
Running: ./tests/func-tests/ptr-null-func-arg.ispc.run
Running: /nix/var/nix/builds/nix-34069-4230430288/source/build/bin/ispc -I /nix/var/nix/builds/nix-34069-4230430288/source/tests --pic --woff /nix/var/nix/builds/nix-34069-4230430288/source/tests/func-tests/1546.ispc -o ./tests/func-tests/1546.ispc.o --arch=x86-64 --target=sse2-i32x4 -DTEST_SIG=1 -O2 -h /nix/var/nix/builds/nix-34069-4230430288/source/tests/func-tests/1546.ispc.h
Compilation of test ./tests/func-tests/round-float16-uniform.ispc failed
Undefined symbols for architecture x86_64:
"_roundevenf", referenced from:
_f_f___un_3C_unf_3E_un_3C_unf_3E_ in round-float16-uniform.ispc.o
ld: symbol(s) not found for architecture x86_64
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
--
Running: clang++ -O2 -I tests/ -m64 tests/test_static.cpp -DTEST_SIG=0 -DTEST_WIDTH=4 ./tests/func-tests/test-23.ispc.o -o ./tests/func-tests/test-23.ispc.run -fPIE -DTEST_HEADER="</nix/var/nix/builds/nix-34069-4230430288/source/tests/func-tests/test-23.ispc.h>"
Running: /nix/var/nix/builds/nix-34069-4230430288/source/build/bin/ispc -I /nix/var/nix/builds/nix-34069-4230430288/source/tests --pic --woff /nix/var/nix/builds/nix-34069-4230430288/source/tests/func-tests/struct-forward-decl.ispc -o ./tests/func-tests/struct-forward-decl.ispc.o --arch=x86-64 --target=sse2-i32x4 -DTEST_SIG=1 -O2 -h /nix/var/nix/builds/nix-34069-4230430288/source/tests/func-tests/struct-forward-decl.ispc.h
Compilation of test ./tests/func-tests/round-float16-varying.ispc failed
Undefined symbols for architecture x86_64:
"_roundevenf", referenced from:
_f_f___un_3C_unf_3E_un_3C_unf_3E_ in round-float16-varying.ispc.o
ld: symbol(s) not found for architecture x86_64
clang++: error: linker command failed with exit code 1 (use -v to see invocation)I also tried switching to LLVM 19, but that didn’t fix the issue on x86_64-darwin. I found a similar issue (ispc/ispc#3529), so we might be able to just skip these tests on |
ispc was broken on darwin for a month:
error:
ZHF: #457852
Things done
passthru.tests.nixpkgs-reviewon this PR. See nixpkgs-review usage../result/bin/.Add a 👍 reaction to pull requests you find important.