Xcode 7 bitcode_strip Fehler

8

Mein Xcode 7 beta3-Projekt enthält ein Framework, das von Xcode 6 kompiliert wurde. Diese Frameworks werden von der Option Embeded Frameworks auf der Registerkarte "Build Phase" in mein Projekt importiert. Da diese Frameworks keinen Bitcode unterstützen, wurde die Option "Enable Bitcode" (Bitcode aktivieren) auf NO (Nein) gesetzt. Beim Kompilieren des Projekts ist ein Bitcode_strip-Fehler aufgetreten:

  

/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/bitcode_strip   /Users/panzhansheng/Desktop/MusicFans_2.0.4_xcode7_autoplay/MusicFans/Frameworks/FLAC.framework/FLAC   -r -o /Users/panzhansheng/Library/Developer/Xcode/DerivedData/MusicFans-bxutvotiungdbwfsxloykffnqoqs/Build/Products/Debug-iphoneos/MusicFans.app/FLAC.framework/FLAC   /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/bitcode_strip:   Eingabedatei muss eine verknüpfte Mach-O-Datei und kein Archiv sein:   /Users/panzhansheng/Desktop/MusicFans_2.0.4_xcode7_autoplay/MusicFans/Frameworks/FLAC.framework/FLAC   (für Architektur i386) Fehler: Bitcode_strip   /Users/panzhansheng/Desktop/MusicFans_2.0.4_xcode7_autoplay/MusicFans/Frameworks/FLAC.framework/FLAC:   /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/bitcode_strip   beendet mit 1

Ich habe festgestellt, dass der Fehler auftrat, als Xcode meine Frameworks in mein App-Paket kopierte und versuchte, Bitcode aus dem Framework zu entfernen, aber diese Frameworks wurden von Xcode früher Version kompiliert und enthielten überhaupt keinen Bitcode. Wie behebe ich das? Danke!

    
pzs7602 18.08.2015, 11:31
quelle

2 Antworten

13

Wie ich herausgefunden habe, verwendet XCode den Bitcode-Strip nur, wenn die Umgebungsvariable STRIP_BITCODE_FROM_COPIED_FILES auf YES gesetzt ist. Es scheint, dass es standardmäßig auf YES gesetzt ist, wenn enable_bitcode eingeschaltet ist.

Hinzufügen von benutzerdefinierten Einstellungen STRIP_BITCODE_FROM_COPIED_FILES = NO zu Ihrem Ziel kann Ihnen helfen, XCode wird nicht Bitcode-Streifen verwenden, aber Ihre App, die Frameworks ohne Bitcode-Abschnitt verwenden wird wahrscheinlich nicht funktionieren. Daher ist es besser, sie auch mit STRIP_BITCODE_FROM_COPIED_FILES = NO neu zu kompilieren, falls nötig.

Getestet auf XCode 7 Beta 5

    
Michael Pogosskiy 21.08.2015, 11:49
quelle
7

Als Antwort auf die Antwort von M. Pogosskiy brauchte ich eine Weile, um herauszufinden, wo ich die Biteinstellung STRIP_BITCODE_FROM_COPIED_FILES platzieren sollte (nicht sehr vertraut mit diesen). als Referenz, hier ist eine Illustration:

    
kennydust 13.10.2015 15:17
quelle

Tags und Links