Laut den Xcode-27-Release-Notes umfasst ARCHS_STANDARD bei einem macOS-Deployment Target von 27 oder höher x86_64 nicht mehr standardmäßig. Wenn Sie ältere macOS-Versionen und Intel-Nutzer weiter unterstützen, bauen und prüfen Sie ein Universal-Artefakt; wenn Ihr Supportumfang ausdrücklich auf macOS 27 und Apple Silicon begrenzt ist, prüfen Sie arm64-only. Ihre CI-Maschine bestimmt dabei nicht automatisch die Architektur Ihrer ausgelieferten App.
Befund: Der Build ist erfolgreich, aber daraus folgt noch kein Intel-Kompatibilitätsnachweis.
Schnellster Weg: Supportumfang festlegen, gebaute App samt Abhängigkeiten prüfen und jede zugesagte Prozessorplattform separat testen.
Diese Anleitung ist für Sie, wenn Sie macOS-Apps entwickeln und eine Freigabe für macOS 27 sowie Intel-Nutzer belastbar entscheiden müssen.
Sie verantworten Apple-Plattform-Releases und wollen Einstellungen, Artefakte und Testergebnisse nachvollziehbar abnehmen.
Oder Sie betreiben macOS-CI und müssen Build-Knoten und Produkt-Support sauber voneinander trennen.
Zuletzt geprüft am 27.10.2026 anhand der Apple-Dokumentation zu Xcode 27, macOS 27, Universal-Binärdateien und Rosetta. Prüfen Sie diese Aussagen erneut, wenn Apple Xcode, macOS oder die Supporthinweise aktualisiert.
Vor der Abnahme: Zielgruppe und Mindestversion festlegen
Legen Sie zuerst schriftlich fest, welche Systeme Ihr Produkt tatsächlich unterstützt. „Mit Xcode 27 gebaut“ oder „läuft auf dem CI-Mac“ ist keine Supportdefinition. Für die Abnahme zählen die erklärte Mindestversion, die Prozessoren Ihrer Nutzer und das Artefakt, das Sie verteilen.
Apple beschreibt macOS 27 als Betriebssystem für Apple-Silicon-Macs. Daraus folgt jedoch nicht, dass jede App, die mit dem macOS-27-SDK gebaut wird, nur arm64 enthalten darf. Apple hält in den Xcode-27-Release-Notes fest, dass sich mit dem macOS-27-SDK Universal-Apps erstellen lassen, deren Deployment Target auf einer früheren macOS-Version liegt. Prüfen Sie deshalb Apples Hinweis zu macOS 27 gemeinsam mit den Xcode-27-Angaben zum SDK und zu ARCHS_STANDARD, statt aus der Betriebssystemversion eine pauschale Architekturregel abzuleiten.
Auch Rosetta beantwortet nicht die Frage, ob Sie Intel-Nutzern Unterstützung zusagen. Rosetta ist eine Übersetzungsumgebung für bestimmte Intel-Programme auf Apple-Silicon-Systemen; sie ersetzt weder ein Intel-Artefakt noch den Test Ihrer App auf einem Intel-Mac. Lesen Sie Apples technische Beschreibung von Rosetta und die jeweilige Apple-Mitteilung zur Unterstützung von Intel-Apps in ihrem konkreten Geltungsbereich. Leiten Sie daraus keine allgemeine Zusage für beliebige ältere macOS-Versionen ab.
| Supportentscheidung | Geeignete Architekturstrategie | Was Sie vor der Freigabe belegen müssen |
|---|---|---|
| Nur macOS 27 und Apple-Silicon-Nutzer sind zugesagt | arm64-only kann passen | Alle Targets, Frameworks, Hilfsprogramme und Distributionsbedingungen sind auf diese Einschränkung geprüft. |
| Ältere macOS-Versionen und Intel-Nutzer bleiben im Support | Universal mit arm64 und x86_64 | Das ausgelieferte Artefakt enthält beide erwarteten Slices; Intel-Ausführung und unterstützte Systemversionen sind getestet. |
| Supportumfang ist unklar oder unterscheidet sich nach Produktversion | Noch keine Architekturentscheidung freigeben | Produktverantwortliche klären Mindestversion, Nutzergruppen und Ausnahmen; bis dahin bleibt die bestehende Supportzusage maßgeblich. |
Diese Matrix verhindert einen häufigen Freigabefehler: Ein Team sieht einen erfolgreichen Build auf einem Apple-Silicon-CI-Knoten und nimmt an, damit sei die Intel-Frage erledigt. Der Build kann trotzdem nur arm64 enthalten; umgekehrt kann ein Apple-Silicon-Knoten ein Universal-Artefakt erzeugen. Host-Prozessor, Deployment Target und Architektur des Lieferartefakts sind drei getrennte Prüfgrößen.
Achtung: Eine Ankündigung zum Ende oder zur Einschränkung einer bestimmten Rosetta-Unterstützung gilt nur in dem Umfang, den Apple dort nennt. Sie ist kein Beleg dafür, dass alle Intel-Anwendungen auf allen früheren macOS-Versionen gleich funktionieren oder nicht funktionieren.
Beim Projektcheck: wirksame Architekturwerte statt Xcode-Vorgaben lesen
Prüfen Sie nicht nur die Projekteinstellungen in der Oberfläche. Xcode kann Werte auf Projektebene, pro Target, pro Build-Konfiguration oder über eingebundene xcconfig-Dateien beziehen. Entscheidend ist der aufgelöste Wert für genau den Build, den Sie freigeben. Apples Anleitung zum Konfigurieren der Build-Einstellungen eines Targets beschreibt, wo diese Werte festgelegt und vererbt werden.
Schritt 1: Deployment Target je Target erfassen
Listen Sie alle Targets auf, die in der ausgelieferten App landen: Hauptanwendung, Erweiterungen, Hilfsprogramme und gegebenenfalls separate Kommandozeilenwerkzeuge. Halten Sie pro Target das Deployment Target für jede relevante Konfiguration fest. Ein App-Target mit älterem Mindestziel reicht nicht aus, wenn eine Erweiterung oder ein eingebettetes Werkzeug eine neuere Systemversion voraussetzt.
Vergleichen Sie diese Werte mit der Produktzusage und den Versionshinweisen Ihres Release-Zweigs. Wenn Sie macOS 27 als Mindestversion setzen, prüfen Sie anschließend besonders sorgfältig, ob Ihre Architektureinstellung x86_64 noch ausdrücklich einschließt. Setzen Sie den Wert nicht vorsorglich auf eine ältere Version, nur um eine bestimmte Architektur zu erzwingen: Das kann eine Supportzusage suggerieren, die Sie mit APIs, Abhängigkeiten und Tests nicht erfüllen.
Schritt 2: ARCHS, Ausschlüsse und alte Überschreibungen kontrollieren
Erfassen Sie für jedes relevante Target mindestens ARCHS, EXCLUDED_ARCHS und vorhandene benutzerdefinierte Build-Konfigurationen. Suchen Sie auch nach älteren VALID_ARCHS-Einträgen in Projektdateien, xcconfig-Dateien und CI-Skripten. Ein übernommener Wert kann die aktuelle Xcode-Standardeinstellung überlagern oder ein Architektur-Slice unbeabsichtigt entfernen.
Lassen Sie sich die tatsächlich aufgelösten Werte mit xcodebuild -showBuildSettings für Scheme, Konfiguration und SDK ausgeben. Vergleichen Sie die Ausgabe für den konkreten Release-Build mit den Einstellungen in Xcode. Die Xcode-27-Aussage zu ARCHS_STANDARD ist der relevante Standardfall; individuelle Einstellungen Ihres Projekts können davon abweichen. Apples TN3117 zu Architektur-Buildfehlern auf Apple Silicon ist hilfreich, wenn ein Ausschluss oder eine Abhängigkeit unerwartet den Build beeinflusst.
| Einstellung oder Prüffrage | Was Sie feststellen | Typischer Abnahmefehler |
|---|---|---|
| Deployment Target | Mindestversion pro App-, Erweiterungs- und Hilfs-Target | Nur das Haupt-Target wird kontrolliert; eine Erweiterung verlangt ein neueres System. |
ARCHS |
Effektiv gebaute Architekturen für den Release-Build | Der Standard wird als unveränderlicher Wert behandelt, obwohl ein Target ihn überschreibt. |
EXCLUDED_ARCHS |
Ausgeschlossene Architekturen je Konfiguration und SDK | Eine temporäre CI-Ausnahme bleibt im Distributionsprofil aktiv. |
VALID_ARCHS und xcconfig-Dateien |
Vorhandene Altwerte und ihre Vererbung | Eine alte Überschreibung verändert den Build, ohne in der Xcode-Oberfläche sofort aufzufallen. |
| Abhängigkeiten und eingebettete Tools | Architektur und Deployment-Anforderungen jedes Bestandteils | Die Haupt-App ist Universal, eine benötigte Bibliothek oder ein Helper jedoch nicht. |
Dokumentieren Sie Abweichungen, statt sie stillschweigend zu „bereinigen“. Ein bewusst gesetztes EXCLUDED_ARCHS kann in einem klar abgegrenzten Entwicklungs-Build sinnvoll sein; im Release-Artefakt braucht es eine begründete Entscheidung. Wenn Ihre CI-Konfiguration vom lokalen Xcode-Projekt abweicht, muss die Abnahme die CI-Ausgabe berücksichtigen, denn genau dieses Artefakt erreicht später die Nutzer.
Nach dem Build: das ausgelieferte Paket untersuchen
Die Projektkonfiguration beschreibt die Absicht; sie beweist nicht, was im fertigen Archiv oder Installationspaket steckt. Prüfen Sie deshalb das konkrete Produkt nach dem Archivieren und möglichst erneut nach dem letzten Verpackungs- oder Signierschritt. Verwechseln Sie dabei nicht einen Universal-Hauptprozess mit einem vollständig Universal-Paket.
Apples Leitfaden zum Erstellen einer Universal-macOS-Binärdatei erläutert das Grundprinzip: Eine Universal-Binärdatei enthält mehrere Architektur-Slices. Für Ihre Abnahme reicht es dennoch nicht, nur die ausführbare Datei der Haupt-App anzusehen. Eingebettete Frameworks, dynamische Bibliotheken, Plug-ins, Login- oder Hintergrundwerkzeuge und mitgelieferte Kommandozeilenprogramme können jeweils eigene Architektur- und Systemanforderungen haben.
Schritt 3: Release-Artefakt statt Arbeitsverzeichnis prüfen
Verwenden Sie für die Kontrolle das Archiv oder Installationspaket, das tatsächlich veröffentlicht werden soll. Ermitteln Sie darin den Pfad zur ausführbaren Datei und prüfen Sie die vorhandenen Slices beispielsweise mit lipo -archs. Mit file erhalten Sie eine ergänzende Dateibeschreibung. Wiederholen Sie die Prüfung für relevante Frameworks und Hilfsprogramme; bei dynamischen Bibliotheken kann otool -L helfen, Abhängigkeiten sichtbar zu machen.
Ein typischer Prüfbefehl für die Haupt-App lautet:
lipo -archs "/Pfad/zum/Release/App.app/Contents/MacOS/App"
Erwarten Sie bei einem Universal-Release die Architektur-Slices, die Ihre Supportentscheidung verlangt, typischerweise arm64 und x86_64. Das Ergebnis für die Hauptdatei ist aber nur ein Teil des Nachweises. Erstellen Sie eine Liste aller kritischen eingebetteten Komponenten und sichern Sie die Prüfausgaben mit Artefaktname oder Commit-Kennung. Ändert ein Verpackungsschritt die App nach dieser Kontrolle, prüfen Sie das endgültige Paket erneut.
Hinweis: Verändern Sie ein signiertes Release-Artefakt nicht nach der Architekturprüfung, ohne Signatur und Notarisierungsablauf erneut zu berücksichtigen. Die Prüfung sollte den unveränderten Kandidaten erfassen, der anschließend verteilt wird.
Im Testlauf: Intel- und Apple-Silicon-Pfade getrennt nachweisen
Ein universelles Paket muss nicht nur beide Architekturen enthalten; es muss in den zugesagten Umgebungen sinnvoll starten und funktionieren. Führen Sie den Test deshalb auf echter, passender Hardware durch, wenn Sie diese Plattformen unterstützen. Ein Apple-Silicon-Mac kann den arm64-Pfad prüfen, ein Intel-Mac den x86_64-Pfad. Ein erfolgreicher Build oder ein Starttest auf nur einer dieser Maschinen ersetzt den jeweils anderen Nachweis nicht.
Schritt 4: Testmatrix an Supportumfang koppeln
Wählen Sie die Testsysteme aus Ihrer Supportzusage, nicht aus der Verfügbarkeit Ihrer CI-Maschinen. Prüfen Sie auf Apple Silicon die native Ausführung des freizugebenden Artefakts. Prüfen Sie auf Intel die Intel-Ausführung, sofern Intel-Nutzer im Supportumfang bleiben. Erfassen Sie bei jedem Lauf Systemversion, Hardwarearchitektur, Artefaktkennung, Startverhalten und Ergebnis der zentralen Funktionen.
Die Abnahme sollte mindestens den normalen Start, zentrale Arbeitsabläufe und relevante Komponenten wie Plug-ins oder Hintergrundprozesse umfassen. Wenn ein Fehler nur in einem Architekturpfad auftritt, halten Sie fest, ob die Ursache in der App, einer Bibliothek, einem Installer oder einer Systemvoraussetzung liegt. So vermeiden Sie, einen Erfolg auf der einen Plattform als allgemeine Kompatibilitätsaussage zu veröffentlichen.
| Prüfschritt | Apple-Silicon-Mac | Intel-Mac | Abzulegender Nachweis |
|---|---|---|---|
| Start der freizugebenden App | Native arm64-Ausführung prüfen | x86_64-Ausführung prüfen, sofern zugesagt | Systemversion, Artefaktkennung und Startresultat |
| Kritische Funktionen | Kernabläufe der App ausführen | Dieselben zugesagten Abläufe ausführen | Testergebnis je Prozessorpfad |
| Eingebettete Komponenten | Frameworks und Hilfsprogramme einbeziehen | Architekturabhängige Komponenten mitprüfen | Liste geprüfter Bestandteile und Abweichungen |
| Fehleranalyse | Reproduzierbarkeit auf dem Zielsystem erfassen | Intel-spezifische Fehler separat protokollieren | Logauszüge, Schritte zur Reproduktion und Freigabestatus |
Auf einem Intel-Rechner können Sie keine arm64-Slice nativ ausführen und debuggen. Das macht einen Intel-Test für eine Universal-App nicht überflüssig: Er beantwortet gerade die Frage, ob der Intel-Pfad funktioniert. Verwechseln Sie außerdem den Start einer Intel-App unter Rosetta auf Apple Silicon nicht mit einem Test auf Intel-Hardware. Die Rosetta-Umgebung hat einen anderen Zweck; Apples Beschreibung der Übersetzungsumgebung ist die passende Grundlage, um diese Testfälle auseinanderzuhalten.
Vor Freigabe: Universal beibehalten oder arm64-only wählen?
Treffen Sie die Freigabeentscheidung erst, wenn Supportzusage, aufgelöste Einstellungen, Artefaktprüfung und Testresultate zusammenpassen. Behalten Sie Universal bei, wenn Sie weiterhin Intel-Nutzer oder frühere macOS-Versionen abdecken müssen, für die Ihre App einen Intel-Pfad bereitstellt. Ziehen Sie arm64-only nur in Betracht, wenn die Produktzusage macOS 27 und Apple Silicon ausdrücklich begrenzt und Sie Abhängigkeiten, Installer, Plug-ins sowie Distributionsbedingungen geprüft haben.
Schritt 5: Freigabe mit prüfbaren Belegen abschließen
Führen Sie vor dem Release eine kurze, versionierte Abnahme durch:
- [ ] Mindestversion und unterstützte Prozessorplattformen sind in Produktdokumentation und Release-Plan eindeutig festgehalten.
- [ ] Deployment Target,
ARCHS,EXCLUDED_ARCHSund möglicheVALID_ARCHS-Altwerte sind pro relevantem Target geprüft. - [ ] Die aufgelösten Build-Einstellungen stammen aus dem Release-Scheme und der verwendeten CI-Konfiguration.
- [ ] Das fertige Artefakt und kritische eingebettete Komponenten enthalten die erwarteten Architekturen.
- [ ] Apple-Silicon- und Intel-Tests wurden getrennt ausgeführt, soweit diese Plattformen zugesagt sind.
- [ ] Systemversion, Artefaktkennung, Prüfausgaben und Testergebnisse sind dem Release zugeordnet.
- [ ] Eine Abweichung zwischen Produktzusage und vorhandenem Architektur-Slice blockiert die Freigabe, bis sie geklärt ist.
Wenn ein Testsystem fehlt, kennzeichnen Sie die Plattform als nicht abgenommen, statt aus einem erfolgreichen CI-Build eine vollständige Kompatibilitätsfreigabe abzuleiten. Ein macOS-CI-Knoten ist ein Werkzeug zum Bauen und Testen; er ist nicht selbst die Supportmatrix. Für Teams, die Arbeitsabläufe auf einer extern bereitgestellten Mac-Umgebung nachvollziehen möchten, können die Anwendungsfälle für einen gemieteten Mac eine passende nächste Prüfung sein.
Vor der Wahl einer Umgebung sollten Sie auch die Alternativen nüchtern bewerten: Ein Linux-Buildrechner liefert keinen gleichwertigen macOS-Release-Test, ein eigener Mac bindet Kapital und ist bei gelegentlichen Abnahmen möglicherweise unterausgelastet, und eine virtuelle Umgebung belegt nicht automatisch das Verhalten auf einem echten Intel- oder Apple-Silicon-System. Wenn Sie solche Tests nur zeitweise auf echter Mac-Hardware ausführen müssen, kann die Miete eines Remote Mac die Anschaffung eines dauerhaft ungenutzten Rechners vermeiden. Prüfen Sie dafür die auf der KVMFLUX-Seite und in den Preisinformationen ausgewiesenen Bedingungen, bevor Sie den Ablauf in Ihre Releaseplanung übernehmen.
Häufige Fragen zur Intel-Abnahme
Müssen macOS-27-Apps noch auf Intel-Macs laufen?
Das hängt von Ihrer Produktzusage ab, nicht allein vom CI-Rechner. Wenn Ihre Zielgruppe macOS 27 auf Apple Silicon nutzt und Sie ältere Intel-Systeme ausdrücklich ausschließen, kann arm64-only infrage kommen. Müssen Sie dagegen Intel-Nutzer auf früheren macOS-Versionen weiter bedienen, planen Sie eine Universal-Auslieferung und testen Sie deren x86_64-Pfad auf einem unterstützten Intel-Mac.
Enthält ARCHS_STANDARD bei einem Deployment Target von macOS 27 noch x86_64?
Laut den Xcode-27-Release-Notes wird x86_64 bei einem macOS-Deployment Target von 27 oder höher nicht mehr standardmäßig von ARCHS_STANDARD umfasst. Prüfen Sie dennoch die aufgelösten Einstellungen für jedes relevante Target und jede Konfiguration: Projektvorgaben, Ausschlüsse und ältere Überschreibungen können das Ergebnis verändern.
Wie kontrollieren Sie, ob eine App sowohl arm64 als auch x86_64 enthält?
Untersuchen Sie die gebaute und tatsächlich verteilte App statt nur die Projekteinstellungen. Mit lipo -archs können Sie die Architekturen der ausführbaren Datei anzeigen lassen; prüfen Sie zusätzlich eingebettete Frameworks, Hilfsprogramme und dynamische Bibliotheken. Sichern Sie die Ausgaben zusammen mit der Artefaktversion, damit die Freigabe später nachvollziehbar bleibt.
Wie weisen Sie die Kompatibilität auf Apple Silicon und Intel getrennt nach?
Starten Sie dasselbe freizugebende Artefakt auf einem Apple-Silicon-Mac und auf einem Intel-Mac, sofern beide zu Ihrem Supportumfang gehören. Notieren Sie je Lauf Systemversion, Prozessor, Artefaktkennung sowie Start- und Funktionsergebnis. Ein erfolgreicher Build auf einem einzelnen CI-Rechner belegt weder die Ausführung des anderen Architekturpfads noch dessen Verhalten auf der Zielplattform.
Häufige Fragen
Müssen macOS-27-Apps noch auf Intel-Macs laufen?
Das hängt von Ihrer Produktzusage ab, nicht allein vom CI-Rechner. Wenn Ihre Zielgruppe macOS 27 auf Apple Silicon nutzt und Sie ältere Intel-Systeme ausdrücklich ausschließen, kann arm64-only infrage kommen. Müssen Sie dagegen Intel-Nutzer auf früheren macOS-Versionen weiter bedienen, planen Sie eine Universal-Auslieferung und testen Sie deren x86_64-Pfad auf einem unterstützten Intel-Mac.
Enthält ARCHS_STANDARD bei einem Deployment Target von macOS 27 noch x86_64?
Laut den Xcode-27-Release-Notes wird x86_64 bei einem macOS-Deployment Target von 27 oder höher nicht mehr standardmäßig von ARCHS_STANDARD umfasst. Prüfen Sie dennoch die aufgelösten Einstellungen für jedes relevante Target und jede Konfiguration: Projektvorgaben, Ausschlüsse und ältere Überschreibungen können das Ergebnis verändern.
Wie kontrollieren Sie, ob eine App sowohl arm64 als auch x86_64 enthält?
Untersuchen Sie die gebaute und tatsächlich verteilte App statt nur die Projekteinstellungen. Mit lipo -archs können Sie die Architekturen der ausführbaren Datei anzeigen lassen; prüfen Sie zusätzlich eingebettete Frameworks, Hilfsprogramme und dynamische Bibliotheken. Sichern Sie die Ausgaben zusammen mit der Artefaktversion, damit die Freigabe später nachvollziehbar bleibt.
Wie weisen Sie die Kompatibilität auf Apple Silicon und Intel getrennt nach?
Starten Sie dasselbe freizugebende Artefakt auf einem Apple-Silicon-Mac und auf einem Intel-Mac, sofern beide zu Ihrem Supportumfang gehören. Notieren Sie je Lauf Systemversion, Prozessor, Artefaktkennung sowie Start- und Funktionsergebnis. Ein erfolgreicher Build auf einem einzelnen CI-Rechner belegt weder die Ausführung des anderen Architekturpfads noch dessen Verhalten auf der Zielplattform.
Prüfen Sie Ihre macOS-App auf echter Apple-Silicon-Hardware
Mit einem dedizierten Mac mini M4 von KVMFLUX testen Sie den arm64-Build Ihrer App auf einem physischen Mac. Führen Sie Builds und Tests per SSH aus oder prüfen Sie die Anwendung über einen vollständigen macOS-Desktop per VNC. Vergleichen Sie Ihre Ergebnisse mit den separaten Intel-Tests und treffen Sie eine fundierte Freigabeentscheidung für Universal oder arm64-only. Mieten Sie den Mac flexibel nach Tag, Woche, Monat oder Quartal – ohne eigene Hardware anzuschaffen.