Platform mismatch error

Joshua Root jmr at macports.org
Thu Aug 15 07:59:33 UTC 2024


On 15/8/2024 17:04, Raoul MEGELAS wrote:
>> On 15 Aug 2024, at 00:48, Joshua Root <jmr at macports.org> wrote:
>>
>> Could you please show the output of the following commands in the shell you use to run the port command?
>>
>> sysctl sysctl.proc_translated => 1
>> echo $SHELL => /bin/zsh
>> lipo -info $SHELL => Architectures in the fat file are: /bin/zsh
>> lipo -info /opt/local/libexec/macports/bin/tclsh8.6
>     => x86_64 arm64

OK, so the sysctl result tells us that your shell is running through 
Rosetta. The most common reason for that is using an x86_64-only 
terminal emulator, though there are other possibilities.

Your MacPorts installation is universal, but because the shell is 
running under Rosetta, it runs MacPorts under Rosetta too. There are 
some problems with running it that way that should be fixed in the next 
release.

In the meantime, to avoid problems, you'll need to run MacPorts 
natively. If your terminal emulator is not native, switching to a native 
one will help. If all else fails, you can force commands to run natively 
by prefixing them with 'arch -arm64', for example:

arch -arm64 sudo port migrate

or start a native shell with:

arch -arm64 /bin/zsh

Hope this helps.
- Josh


More information about the macports-users mailing list