Frage an xcode4, iphone, objective-c – Fehlt die benötigte Architektur armv7 in der Datei?

21

Ich bekomme ständig diese Warnung und Fehler. Kann mir jemand helfen?

<code>    ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms       /iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk/System/Library/Frameworks//SystemConfiguration.framework/SystemConfiguration, missing required architecture armv7 in file
    Undefined symbols for architecture armv7:
    "_SCNetworkReachabilityCreateWithAddress", referenced from:
  +[Reachability reachabilityWithAddress:] in Reachability.o
   "_SCNetworkReachabilityCreateWithName", referenced from:
  +[Reachability reachabilityWithHostName:] in Reachability.o
   "_SCNetworkReachabilityUnscheduleFromRunLoop", referenced from:
  -[Reachability stopNotifier] in Reachability.o
   "_SCNetworkReachabilityScheduleWithRunLoop", referenced from:
  -[Reachability startNotifier] in Reachability.o
   "_SCNetworkReachabilitySetCallback", referenced from:
  -[Reachability startNotifier] in Reachability.o
   "_SCNetworkReachabilityGetFlags", referenced from:
  -[Reachability connectionRequired] in Reachability.o
  -[Reachability currentReachabilityStatus] in Reachability.o
   ld: symbol(s) not found for architecture armv7
   clang: error: linker command failed with exit code 1 (use -v to see invocation)
</code>

Meine App funktioniert einwandfrei im Simulator. Ich verstehe das nicht. Es ist nur, wenn ich das Telefon baue.

Deine Antwort

5   die antwort
59

en. Wählen Sie Ihr Projekt im Projektnavigator von Xcode aus, wählen Sie Ihr App-Ziel aus und klicken Sie auf die Registerkarte Build-Phasen. Klicken Sie unter "Binär mit Bibliotheken verknüpfen" auf die Schaltfläche "+" und wählen Sie "SystemConfiguration.framework".

Es kann andere Framework-Abhängigkeiten geben, die Sie auf die gleiche Weise hinzufügen müssen, aber das Hinzufügen von SystemConfiguration hat die gleichen Fehler für mich behoben.

ETA: Ich bin direkt zu den Fehlern gesprungen und habe die ld-Warnung oben in der Paste nicht gesehen. Wenn Sie bereits eine Verknüpfung zu SystemConfiguration herstellen, entfernen Sie diese möglicherweise und fügen Sie sie erneut hinzu. Wenn alles andere fehlschlägt, aktualisieren Sie Xcode. Die neueste Version hat definitiv die richtige Architektur, daher klingt es für mich so, als ob Ihr Projekt am falschen Ort ist oder etwas mit dem Framework selbst nicht stimmt.

Seufzer. Es ist 2016. WARUM hilft uns Xcode nicht, solche Probleme zu umgehen, anstatt vage Fehlermeldungen herauszuspritzen ?! Mir ist gestern aufgefallen, dass Sie auf der Website apple.com/feedback mit Ausnahme von Xcode Feedback zu sämtlicher Apple-Hardware und -Software geben können. Komisch, dass ... Wie auch immer, danke - das hat mein Problem perfekt gelöst !! Mike Gledhill
Ich habe nur gemerkt, dass ich das nie als die richtige Antwort akzeptiert habe. Popeye
Arbeitete auch für mich. Ich denke das ist die richtige Antwort. John Ballinger
du rockst, Bruder ...... rettete meinen Tag ... vielen Dank ... Mahesh Agrawal
1

dass Sie alle notwendigen Bibliotheken hinzufügen, um Ihre App zu erstellen. Dieser Fehler scheint, als hätten Sie einige Dateien verpasst.

0

Path => Project tittle(select Xcode blue color reject title) -> Build Setting -> ARCHS) in diesem ARCHS, wenn Sie armv7 nicht haben, als es hinzuzufügen ...

Hoffe, das wird dir helfen ..

0

Ziele -> Buildeinstellungen -> Architekturen

Klicken Sie auf -> other + und fügen Sie armv6 in die angegebene Spalte ein ...

Reinigen und bauen

4

als ich ein mit Carthage erstelltes Framework eingebunden habe und dessen Bereitstellungsziel auf iOS 11 festgelegt wurde, aber ich für iOS 9 erstellt habe. Daher fehlten die 32-Bit-Architekturen (armv7, i386). Ich habe das Bereitstellungsziel für dieses Framework auf iOS 9 geändert und dadurch mein Problem behoben.

Danke, das hat sehr geholfen! Gleiches Thema für mich. Maail

Verwandte Fragen