Nach der Migration meines Frameworks auf Xcode 10 Beta (10L176w) wurden Warnungen angezeigt wie:
Zuordnung der Architektur arm64 zu x86_64. Stellen Sie sicher, dass die Build-Einstellungen für Architekturen und gültige Architekturen dieses Ziels für die iOS Simulator-Plattform korrekt konfiguriert sind.
... und:
Zuordnung der Architektur armv7 zu i386. Stellen Sie sicher, dass die Build-Einstellungen für Architekturen und gültige Architekturen dieses Ziels für die iOS Simulator-Plattform korrekt konfiguriert sind.
Trotz dieser Warnungen bestehen der Build- und der Unit-Test alle OK. Ich benutze Swift 4.2.
Worum geht es in diesen Warnungen?
ARCHS = $(ARCHS_STANDARD_64_BIT)
und zuVALID_ARCHS = $(inherited) x86_64 i386
Antworten:
Gehen Sie zu Build Settings und gehen Sie wie unten gezeigt vor
quelle
There are no valid architectures to compile for because the VALID_ARCHS build setting is an empty list
Ich konnte diese Warnungen zum Schweigen bringen, indem ich meine änderte stumm schalten, indem
$(ARCHS_STANDARD)
ich Einstellung für gültige Architekturen so Einstellung für Architekturen übereinstimmt .Seltsamerweise wird dies als
armv7 arm64
(im Vergleich zur Standardeinstellung vonarmv7 armv7s arm64
) , aber das manuelle Setzen auf diesen Wert verursachte immer noch die Warnungen. Ich bin mir nicht sicher, welche Bedeutung das hat, aber ich habe noch keine Probleme bei meinen Tests bemerkt.quelle
Wahrscheinlich wurde die Build-Einstellung VALID_ARCHS ("Valid Architectures") entweder für das Ziel oder für das Projekt überschrieben. Dies ist eine Build-Einstellung, deren Wert automatisch basierend auf dem Ausführungsziel ermittelt werden soll, für das Sie erstellen. Wenn Sie herausfinden, woher diese Überschreibung stammt (die Build-Einstellung wird beim Überschreiben fett angezeigt), wählen Sie sie aus und drücken Sie die Entf-Taste, um den Standardwert wiederherzustellen.
quelle
VALID_ARCHS
. Es enthältarm64
sowohl für Debug als auch für Release.VALID_ARCHS
, um sie auf Standard zu setzen, und dann Xcode bereinigen und schließen / wieder öffnen, damit es für mich vollständig funktioniertÄndern Sie für das ZIEL, das Warnungen meldet, die Einstellung "Gültige Architektur" in:
quelle
Ähnlich wie bei anderen Antworten konnte ich die Warnung durch Ändern von
$(VALID_ARCHS)
(Gültige Architekturen) in entfernen$(ARCHS_STANDARD)
. Von dort aus löschte ich alle abgeleiteten Daten und startete Xcode 10.0 neu. Dies ließ die Warnung vollständig verschwinden. Wenn Sie alles aus gültigen Architekturen löschen, wird eine andere Warnung angezeigt ("Keine gültigen Architekturen gefunden").quelle
Die Lösung ist einfacher: In gültigen Architekturen ersetzen Sie einfach arm64 durch x86_64 .
Hatte ein ähnliches Problem und die folgenden drei Warnungen in meinem Projekt:
Meine gültigen Archtectures waren ursprünglich
Ersetzen:
(wie in den Warnungen erwähnt) war meine Lösung. Das Ergebnis in der Einstellung " Gültige Architektur" war:
Nach dem Austausch verschwanden meine drei obigen Warnungen.
Weitere Informationen zu den Architekturen finden Sie hier: https://docs.elementscompiler.com/Platforms/Cocoa/CpuArchitectures/
Ich denke, die Formulierung dieser Warnung in Xcode ist etwas verwirrend.
quelle
Wenn Sie Probleme mit Flutter haben:
Löschen Sie die Datei Podfile, Podfile.lock, Pods, Runner.xcworkspace, Flutter.framework.
Ausführen
flutter clean
.flutter build ios
.quelle
Diese Warnung wurde angezeigt, als ich versuchte, Code für iOS und Mac OS zu kompilieren. Ich konnte es umgehen, indem ich zuerst das tat, was Hassan Taleb in seiner Antwort vorgeschlagen hatte: Löschen Sie die Architekturen, sodass nur gültige iPhone-Architekturen vorhanden sind. Um schließlich für Mac OS erstellen zu können, bewegen Sie die Maus über die gültigen Architekturen, sodass eine Plus-Schaltfläche angezeigt wird. Klicken Sie darauf, und fügen Sie nach Bedarf separate Einstellungen für verschiedene Plattformen hinzu, einschließlich verschiedener CPU-Architekturen. Für das macOS SDK kann ich meine gültigen Architekturen auf x86_64 setzen, wenn ich möchte.
quelle
Ich fand den einfachsten Weg, dies zu beheben, indem ich das Projekt in meinem Texteditor öffnete und dann alle
VALID_ARCHS
Zeilen suchte und löschte .quelle
Wenn Ihre [Build-Einstellungen] armv7 armv7s arm64 ist, löschen Sie bitte armv7s. Die Warnung wird abgebrochen.
quelle