Ich habe ein Projekt, das die zbar-sdk (eine Barcode-Scan-Bibliothek) verwendet.
Nach dem Update meines Rechners auf xcode 4.5 und ios6sdk habe ich einige Probleme.
Ich konnte zum Simulator bauen, ohne irgendetwas an meinem Projekt zu berühren. Dies verwendet die neueste zbar 1.2-Bibliothek.
Ich wollte dann zu meinem ios6-Gerät zum Testen bauen, und das ist, wenn ich einen Fehler habe.
Nachdem ich im zbar-Entwicklerforum gegoogelt habe, habe ich gesehen, dass ich die zbar-Quelle bekommen und die libzbar.a für armv7 und armv7s erstellen musste, da dies vom zbar-Entwickler noch nicht erledigt wurde.
Siehe - Ссылка
Also habe ich die aktualisierte libzbar.a in mein Projekt importiert. Ich habe dann für mein Gerät gebaut, und es hat funktioniert! Ich konnte meine App auf mein Testgerät bringen und die Zbar-Barcode-Bibliothek funktionierte einwandfrei.
Ich dachte, das wäre das Ende, aber leider nicht.
Ich habe dann versucht, wieder zum Simulator (ios6) zu bauen, und das ist, wenn es fehlschlägt.
Egal, was ich dieses Projekt nicht gleichzeitig für das Gerät und den Simulator mit den gleichen Einstellungen erstellen kann: (
Meine libzbar.a Projekteinstellungen beim Erstellen meiner eigenen libzbar.a Datei:
Architektur: Standard (armv7, armv7s) $ (ARCHS_STANDARD_32_BIT)
Nur aktive Architektur erstellen: Nein
Gültige Architekturen: armv7 armv7s
Und meine Projekteinstellungen (für myapp) wie:
Architektur: Standard (armv7, armv7s) $ (ARCHS_STANDARD_32_BIT)
Nur aktive Architektur erstellen: Nein
Gültige Architekturen: armv7 armv7s
Basis-SDK: iOS6
iOS-Bereitstellungsziel: iOS 5.0
Und der Fehler beim Versuch, zum Simulator zu bauen:
%Vor%Ich habe versucht, die libzbar.a Projekteinstellungen zu optimieren (z. B. Build aktive Architektur auf "YES" gesetzt), aber dies führt nur dazu, dass weder der Simulator noch das Gerät funktioniert.
Die Tatsache, dass es auf dem Gerät, aber nicht auf dem Simulator funktioniert, bringt mich dazu, dass es eine seltsame Architektur / Projekteinstellung gibt, die das verursacht.
Jede Hilfe sehr geschätzt!
Ich bezweifle, dass das die richtige Antwort ist, aber es hat für mich funktioniert, ich habe das neue libzber.a unter Verwendung von Architekturen: i386 armv6 armv7 armv7s in dieser Reihenfolge kompiliert, die Sie auch gültige Architekturen als die gleichen angeben müssen Werte. Auch das war, was für mich mit einer neuen Version funktionierte, die ich brauchte, um A.S.A.P. Beide sind in Ziel gefunden - & gt; Buildeinstellungen - & gt; Architecures.
Beachten Sie auch: $ (ARCHS_STANDARD_32_BIT) muss aus den Einstellungen entfernt werden.
Ich habe ein ähnliches Problem behoben, indem ich die iOS6-Simulatorarchitektur unter OTHER_LDFLAGS unter Ziel- & gt; Build-Einstellungen eingestellt habe.
Ich habe vergessen, dass ich ein anderes Befehlszeilenargument für getrennte Architkturen hatte, daher musste ich den Simulator manuell angeben