Jump to page: 1 2
Thread overview
how to install the new dmd on Mac M1?
Aug 25, 2022
MichaelBi
Aug 25, 2022
MichaelBi
Aug 25, 2022
Ben Jones
Aug 26, 2022
MichaelBi
Aug 26, 2022
Nicholas Wilson
Aug 26, 2022
MichaelBi
Aug 26, 2022
MichaelBi
Aug 27, 2022
Johan
Aug 29, 2022
Guillaume Piolat
August 25, 2022

I downloaded the new dmd 2.1 on Mac, but with fail message of "unsupported Arch arm64". how can I do? thanks.

August 25, 2022

On 8/25/22 10:19 AM, MichaelBi wrote:

>

I downloaded the new dmd 2.1 on Mac, but with fail message of "unsupported Arch arm64". how can I do? thanks.

DMD is x86 only. M1 macs can run x86 via rosetta.

I haven't had this specific problem. Can you list the actual commands you are running, and the output from the system?

-Steve

August 25, 2022

On Thursday, 25 August 2022 at 14:37:01 UTC, Steven Schveighoffer wrote:

>

On 8/25/22 10:19 AM, MichaelBi wrote:

>

I downloaded the new dmd 2.1 on Mac, but with fail message of "unsupported Arch arm64". how can I do? thanks.

DMD is x86 only. M1 macs can run x86 via rosetta.

I haven't had this specific problem. Can you list the actual commands you are running, and the output from the system?

-Steve

it's simple as following:

-iMac ~ % curl -fsS https://dlang.org/install.sh | bash -s dmd
Unsupported Arch arm64

August 25, 2022

On 8/25/22 10:44 AM, MichaelBi wrote:

>

On Thursday, 25 August 2022 at 14:37:01 UTC, Steven Schveighoffer wrote:

>

On 8/25/22 10:19 AM, MichaelBi wrote:

>

I downloaded the new dmd 2.1 on Mac, but with fail message of "unsupported Arch arm64". how can I do? thanks.

DMD is x86 only. M1 macs can run x86 via rosetta.

I haven't had this specific problem. Can you list the actual commands you are running, and the output from the system?

-Steve

it's simple as following:

-iMac ~ % curl -fsS https://dlang.org/install.sh | bash -s dmd
Unsupported Arch arm64

So install.sh is checking the architecture, and failing because the OS reports it as arm64.

case $(uname -m) in
    x86_64|amd64) ARCH=x86_64; MODEL=64;;
    aarch64) ARCH=aarch64; MODEL=64;;
    i*86) ARCH=x86; MODEL=32;;
    *)
        fatal "Unsupported Arch $(uname -m)"
        ;;

You could change the line that starts with aarch64 to aarch64|arm64

That might work. I'm not sure, because really you want x86_64 for dmd (there is no aarch64 or arm64 build of dmd).

Have you tried using the dmg package?

-Steve

August 25, 2022

On Thursday, 25 August 2022 at 15:19:56 UTC, Steven Schveighoffer wrote:

>

On 8/25/22 10:44 AM, MichaelBi wrote:

>

On Thursday, 25 August 2022 at 14:37:01 UTC, Steven Schveighoffer wrote:

>

On 8/25/22 10:19 AM, MichaelBi wrote:

Is there a reason you want to use DMD specifically? If you use homebrew then brew install ldc dub will just works for dub projects, and to explicitly run the compiler just use ldc2 instead of dmd. LDC is actually an ARM executable and outputs ARM executables. I assume it's easy to install ldc without homebrew, but I haven' tried.

August 26, 2022

On Thursday, 25 August 2022 at 16:06:49 UTC, Ben Jones wrote:

>

On Thursday, 25 August 2022 at 15:19:56 UTC, Steven Schveighoffer wrote:

>

On 8/25/22 10:44 AM, MichaelBi wrote:

>

On Thursday, 25 August 2022 at 14:37:01 UTC, Steven Schveighoffer wrote:

>

On 8/25/22 10:19 AM, MichaelBi wrote:

Is there a reason you want to use DMD specifically? If you use homebrew then brew install ldc dub will just works for dub projects, and to explicitly run the compiler just use ldc2 instead of dmd. LDC is actually an ARM executable and outputs ARM executables. I assume it's easy to install ldc without homebrew, but I haven' tried.

when using ldc2, has this error "ld: library not found for -lssl" after dub build --compiler=ldc2

August 26, 2022

On Friday, 26 August 2022 at 00:34:30 UTC, MichaelBi wrote:

>

when using ldc2, has this error "ld: library not found for -lssl" after dub build --compiler=ldc2

So where is your ssl library located and how (if at all) are you telling the compiler/linker where to find it?

August 26, 2022

On Thursday, 25 August 2022 at 15:19:56 UTC, Steven Schveighoffer wrote:

>

On 8/25/22 10:44 AM, MichaelBi wrote:

>

On Thursday, 25 August 2022 at 14:37:01 UTC, Steven Schveighoffer wrote:

>

[...]

it's simple as following:

-iMac ~ % curl -fsS https://dlang.org/install.sh | bash -s dmd
Unsupported Arch arm64

So install.sh is checking the architecture, and failing because the OS reports it as arm64.

case $(uname -m) in
    x86_64|amd64) ARCH=x86_64; MODEL=64;;
    aarch64) ARCH=aarch64; MODEL=64;;
    i*86) ARCH=x86; MODEL=32;;
    *)
        fatal "Unsupported Arch $(uname -m)"
        ;;

You could change the line that starts with aarch64 to aarch64|arm64

That might work. I'm not sure, because really you want x86_64 for dmd (there is no aarch64 or arm64 build of dmd).

Have you tried using the dmg package?

-Steve

you are right, the package install is OK. but after running dub build --compiler=dmd, the error of "ld: library not found for - lssl" is still there...

August 26, 2022

On Friday, 26 August 2022 at 00:55:05 UTC, Nicholas Wilson wrote:

>

On Friday, 26 August 2022 at 00:34:30 UTC, MichaelBi wrote:

>

when using ldc2, has this error "ld: library not found for -lssl" after dub build --compiler=ldc2

So where is your ssl library located and how (if at all) are you telling the compiler/linker where to find it?

I installed openssl and also export the path of lib, but still got that errors...

August 26, 2022

On 8/25/22 11:50 PM, MichaelBi wrote:

>

you are right, the package install is OK. but after running dub build --compiler=dmd, the error of "ld: library not found for - lssl" is still there...

I've not had problems since updating to the M1, but my system was upgraded through many years, so I don't know if it's because I just have old cruft leftover.

I'd try installing the dev tools from apple, probably you'd get the ssl library then?

-Steve

« First   ‹ Prev
1 2