On Aug 30, 2022, at 20:57, Ian Wadham wrote: > > I recently purchased a new MacBook Pro with Monterey O/S and installed > MacPorts on it from scratch. > > I installed the qt4-mac port successfully, but kdelibs4 refused to install > because the qt4-mac port did > not support arm64 architecture and i am on an Apple Silicon arm64 machine. > > The problem arose because the installation process for qt4-mac included the > steps: > > —> Attempting to fetch qt4-mac-4.8.7_13.darwin_21.x86_64.tbz from > https://packages.macports.org/qt4-mac > —> Attempting to fetch qt4-mac-4.8.7_13.darwin_21.x86_64.tbz.rmd160 from > https://packages.macports.org/qt4-mac > > The second step succeeded, i.e. MacPorts itself downloaded an inappropriate > package for an Apple > Silicon machine. I noticed that some (maybe not all) of qt4-mac’s > dependencies were compiled or > downloaded as arm64 code and, curiously, some of Qt4’s utility apps work on > my machine, perhaps > due to the Rosetta emulator stepping in and taking over. > > The kdelibs4 install failed in the “Computing dependencies…” step, saying > “Error: Cannot install kdelibs4 for > the arch arm64 because its dependency qt4-mac only supports the archs ‘ppc > ppc64 i386 x86_64’” > > Is this a bug or is it the end of the line for kdelibs4 on arch64? Can > kdelibs4 really build as arch64? And what > about its (enormous) list of other dependencies? Do they all build for arch64? > > If there is a bug here, I think it is that MacPorts can download a package > for an inappropriate architecture.
MacPorts correctly installed qt4-mac for x86_64 on your machine because qt4-mac does not support arm64. The x86_64 qt4-mac will work on your arm64 Mac via Rosetta 2 dynamic translation. kdelibs4, and all other ports that use qt4-mac, need to be declared to be arm64-incompatible, due to qt4-mac's arm64 incompatibility. See https://trac.macports.org/ticket/65765
