PetarKirov / dlang.nix

Nix expressions for building D compilers
MIT License
6 stars 2 forks source link

dmd 2.102.2 doesn't compile on macos #8

Open PetarKirov opened 11 months ago

PetarKirov commented 11 months ago

See: https://github.com/PetarKirov/dlang-nix/actions/runs/6291202903/job/17079346714

During the checkPhase of dmd, the following two test cases fail to link on macOS:

dmd>  ... runnable/objc_class.d          -L-framework -LFoundation  -fPIC (-inline -release -g -O)
dmd> ==============================
dmd> Test 'runnable/objc_class.d' failed. The logged output:
dmd> clang -m64 -c runnable/extra-files/objc_class.m -o test_results/runnable/objc_class.m.o
dmd> /private/tmp/nix-build-dmd-2.102.2.drv-0/dmd/generated/osx/release/64/dmd -conf= -m64 -Irunnable -L-framework -LFoundation  -fPIC  -odtest_results/runnable -oftest_results/runnable/objc_class_0  runnable/objc_class.d test_results/runnable/objc_class.m.o
dmd> Undefined symbols for architecture x86_64:
dmd>   "_objc_alloc_init", referenced from:
dmd>       _callFooInstanceMethod in objc_class.m.o
dmd> ld: symbol(s) not found for architecture x86_64
dmd> clang-11: error: linker command failed with exit code 1 (use -v to see invocation)
dmd> Error: linker exited with status 1
dmd> ==============================
dmd> Test 'runnable/objc_class.d' failed: Expected rc == 0, but exited with rc == 1
dmd> >>> TARGET FAILED: runnable/objc_class.d
dmd>  ... runnable/objc_self_test.d      -L-framework -LFoundation  -fPIC (-inline -release -g -O)
dmd> ==============================
dmd> Test 'runnable/objc_self_test.d' failed. The logged output:
dmd> clang -m64 -c runnable/extra-files/objc_self_test.m -o test_results/runnable/objc_self_test.m.o
dmd> /private/tmp/nix-build-dmd-2.102.2.drv-0/dmd/generated/osx/release/64/dmd -conf= -m64 -Irunnable -L-framework -LFoundation  -fPIC  -odtest_results/runnable -oftest_results/runnable/objc_self_test_0  runnable/objc_self_test.d test_results/runnable/objc_self_test.m.o
dmd> Undefined symbols for architecture x86_64:
dmd>   "_objc_alloc_init", referenced from:
dmd>       _getValue in objc_self_test.m.o
dmd> ld: symbol(s) not found for architecture x86_64
dmd> clang-11: error: linker command failed with exit code 1 (use -v to see invocation)
dmd> Error: linker exited with status 1
dmd> ==============================
dmd> Test 'runnable/objc_self_test.d' failed: Expected rc == 0, but exited with rc == 1
dmd> >>> TARGET FAILED: runnable/objc_self_test.d