dub build --compiler=ldc2 --arch=arm64-apple-macos
Starting Performing "debug" build using ldc2 for aarch64, arm_hardfloat.
Building taggedalgebraic 0.11.22: building configuration [library]
Building eventcore 0.9.20+commit.4.g6744ae7: building configuration [cfrunloop]
Building server ~master: building configuration [application]
Linking server
ld: warning: ignoring file ../../../.dub/packages/taggedalgebraic-0.11.22/taggedalgebraic/.dub/build/library-debug-posix.osx.darwin-aarch64.arm_hardfloat-ldc_v1.30.0-60F6D8BEA34F8F5E792A98EA27B02D2235262A4E0795062F91FA90871411535D/libtaggedalgebraic.a, building for macOS-x86_64 but attempting to link with file built for unknown-arm64
ld: warning: ignoring file /opt/homebrew/Cellar/ldc/1.30.0_1/lib/libdruntime-ldc.a, building for macOS-x86_64 but attempting to link with file built for macOS-arm64
ld: warning: ignoring file .dub/build/application-debug-posix.osx.darwin-aarch64.arm_hardfloat-ldc_v1.30.0-7AC1A4B8AFD7D9F59DB01E667A3DCF19DD437F41E741F5937BDCF58FAE6AA922/server.o, building for macOS-x86_64 but attempting to link with file built for unknown-arm64
ld: warning: ignoring file ../../eventcore/.dub/build/cfrunloop-debug-posix.osx.darwin-aarch64.arm_hardfloat-ldc_v1.30.0-ED6AFABD5E24BB6BCED6FD74F2DE88CF39B648360CE187983206459095D4677D/libeventcore.a, building for macOS-x86_64 but attempting to link with file built for unknown-arm64
ld: warning: ignoring file /opt/homebrew/Cellar/ldc/1.30.0_1/lib/libphobos2-ldc.a, building for macOS-x86_64 but attempting to link with file built for macOS-arm64
Undefined symbols for architecture x86_64:
"_main", referenced from:
implicit entry/start for main executable
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Error: /usr/bin/cc failed with status: 1
Error ldc2 failed with exit code 1.
Thread overview | |||||||||
---|---|---|---|---|---|---|---|---|---|
|
December 03, 2022 How to compiler dlang code on Apple M1? | ||||
---|---|---|---|---|
| ||||
December 03, 2022 Re: How to compiler dlang code on Apple M1? | ||||
---|---|---|---|---|
| ||||
Posted in reply to zoujiaqing | On 12/3/22 1:59 PM, zoujiaqing wrote: >
The issue is dub. Make sure you are using the dub built for ARM. What Apple does is if any program in the same process group is x86 specific, then all the executed programs that are universal (including the linker) will switch to that mode. The linker thinks you are building on x86, even though the compiler is doing ARM64. I ran into this early on too. Switching to the dub that ships with ldc built for ARM solved it! -Steve |
December 13, 2022 Re: How to compiler dlang code on Apple M1? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Steven Schveighoffer | On Saturday, 3 December 2022 at 20:33:59 UTC, Steven Schveighoffer wrote: >The issue is dub. Make sure you are using the dub built for ARM. What Apple does is if any program in the same process group is x86 specific, then all the executed programs that are universal (including the linker) will switch to that mode. The linker thinks you are building on x86, even though the compiler is doing ARM64. I ran into this early on too. Switching to the dub that ships with ldc built for ARM solved it! -Steve
So hard .. |
December 14, 2022 Re: How to compiler dlang code on Apple M1? | ||||
---|---|---|---|---|
| ||||
Posted in reply to zoujiaqing | Which ldc did you install? Was it: ldc2-1.30.0-osx-arm64.tar.xz |
December 13, 2022 Re: How to compiler dlang code on Apple M1? | ||||
---|---|---|---|---|
| ||||
Posted in reply to zoujiaqing | On 12/13/22 9:35 AM, zoujiaqing wrote: >On Saturday, 3 December 2022 at 20:33:59 UTC, Steven Schveighoffer wrote: >The issue is dub. Make sure you are using the dub built for ARM. What Apple does is if any program in the same process group is x86 specific, then all the executed programs that are universal (including the linker) will switch to that mode. The linker thinks you are building on x86, even though the compiler is doing ARM64. I ran into this early on too. Switching to the dub that ships with ldc built for ARM solved it! -Steve
So hard .. Yeah, that's a known issue: https://github.com/ldc-developers/ldc/issues/3864 Try building with -Steve |
December 13, 2022 Re: How to compiler dlang code on Apple M1? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Steven Schveighoffer | On 12/13/22 10:20 AM, Steven Schveighoffer wrote: >Yeah, that's a known issue: https://github.com/ldc-developers/ldc/issues/3864 Try building with Oh, also, I have MACOSX_DEPLOYMENT_TARGET=11 in my environment, that helps to avoid it as well. -Steve |
December 14, 2022 Re: How to compiler dlang code on Apple M1? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Steven Schveighoffer | On Tuesday, 13 December 2022 at 15:21:41 UTC, Steven Schveighoffer wrote: >On 12/13/22 10:20 AM, Steven Schveighoffer wrote: >Yeah, that's a known issue: https://github.com/ldc-developers/ldc/issues/3864 Try building with Oh, also, I have MACOSX_DEPLOYMENT_TARGET=11 in my environment, that helps to avoid it as well. -Steve This export solves the issue (at least for me). Thanks Steven! |