I was excited today when I successfully compiled one of my existing iPlug2 projects in Xcode 13.1 with the Architecture set to “Standard Apple (Silicon, Intel)”. I thought it translated the x86_64 build to include ARM64 as it compiled without error. I loaded the plugin in Logic (on Monterey) and it ran perfectly.
I don’t have an M1 so I checked the executable with “lipo -archs” and, to my disappointment, it says the file is x86_64 only - no ARM64.
So apparently there is more to porting to M1/ARM than simply re-building the plugin in Xcode with the Silicon + Intel architecture. What else is required? Massive changes or just some simple setting(s) somewhere? Apple info isn’t much help. Basically says Xcode does this “automagically”.
Since Rosetta can translate x86 code on the fly it seems like Xcode should be able to do the same at compilation time - but apparently it’s not that simple.