When I type "set" one of the values I get back is: MACHTYPE=x86_64 Why is this? I am on an arm64 (M4) Mac Mini. I don't want Universal binaries, is this what happens now? I'm very confused...
On Wed, Sep 24, 2025 at 3:14 PM Kenneth Wolcott <[email protected]> wrote: > I'm getting the same kind of error when trying to compile a gcc (C) > binding for GMP to the Pluto language: > > ./compile_gmp_support_for_pluto.bash > clang: warning: overriding deployment version from '16.0' to '26.0' > [-Woverriding-deployment-version] > ld: warning: building for macOS-16.0, but linking with dylib > '/opt/local/lib/libgmp.10.dylib' which was built for newer version 26.0 > > cat ./compile_gmp_support_for_pluto.bash > #!/bin/bash > > # Steps needed to compile this file (pluto-gmp.c) on Linux using GCC. > # gcc -c -fpic pluto-gmp.c > # gcc -O3 -fpic -shared -o pluto-gmp.so pluto-gmp.o -lgmp > /opt/local/bin/gcc-mp-15 -c -fpic ./pluto-gmp.c > /opt/local/bin/gcc-mp-15 -O3 -fpic -shared -o ./libpluto-gmp.dylib > ./pluto-gmp.o -lgmp > > So maybe something has to change with both my gnat compilation AND my gcc > compilation usage? > > How do I verify that I don't have version 16 stuff hanging around > confusing things and that I do have version 26 stuff? > > I've successfully compiled the llvm-21 packages (today), so I think I have > the version 26 stuff installed... > > Thanks, > Ken Wolcott > > On Wed, Sep 24, 2025 at 2:46 PM Kenneth Wolcott <[email protected]> > wrote: > >> Hi; >> >> I'm asking here because I know for certain that many people here are >> able to assist :-) >> >> I have a MacOS Tahoe arm64 linking problem. It might look like an >> Ada compiler problem, but I'm quite certain that the compile was >> successful but the linking failed. >> >> This is a slightly out-of-date GNAT compiler suite for MacOS arm64, >> but I don't think that is the problem. >> >> This problem appeared after I upgraded MacOS to Tahoe. >> >> I posted on the Ada Forum regarding this issue. >> >> I was given a simple workaround which was not simple enough for me to >> understand :-) >> >> The first solution provided: >> >> ############################################################################## >> Remove current xCode CLI tools and install the most current version. >> >> ############################################################################## >> >> My response: I'd already done that, same problem. >> >> The second solution provided: >> >> ############################################################################## >> Adding >> >> package Linker is >> for Leading_Switches ("Ada") use ("-Wl,-syslibroot," & external >> ("SDKROOT", "")); >> end Linker; >> >> to the .gpr file and then setting the appropriate SDKROOT via >> >> export SDKROOT="$(xcrun --sdk macosx --show-sdk-path)" >> >> seemed to do the trick. >> >> ############################################################################## >> >> My response to that is: >> Nice, good info for the future, but currently I'm using gnatmake, not >> gpr... >> >> The problem: >> >> ############################################################################## >> gnatmake -v ./shift_left.adb >> >> GNATMAKE 15.0.1 20250418 (prerelease) >> Copyright (C) 1992-2025, Free Software Foundation, Inc. >> “shift_left.ali” being checked … >> → “shift_left.ali” missing. >> gcc -c -I./ -I- ./shift_left.adb >> clang: warning: overriding deployment version from ‘16.0’ to ‘26.0’ >> [-Woverriding-deployment-version] >> End of compilation >> gnatbind -x shift_left.ali >> gnatlink shift_left.ali >> clang: warning: overriding deployment version from ‘16.0’ to ‘26.0’ >> [-Woverriding-deployment-version] >> ld: library not found for -lSystem >> collect2: error: ld returned 1 exit status >> gnatlink: error when calling /opt/gnat-aarch64-darwin-15.1.0-2/bin/gcc >> gnatmake: *** link failed. >> >> The Ada code is from Rosetta Code: >> "Shift list elements to left by 3" >> <https://rosettacode.org/wiki/Shift_list_elements_to_left_by_3#Ada> >> >> ############################################################################## >> >> What is the correct manner to tell the linker what it needs to know? >> >> I've seen similar stuff when watching stuff being compiled by "sudo >> port -v -s install <package>", but I don't know enough how to apply >> it to my situation. >> >> Thanks, >> Ken Wolcott >> >
