xcode7 bitcode

xcode7 - Xcode 7 y ENABLE_BITCODE=YES no funciona



(9)

He seguido varios subprocesos en torno a la nueva configuración ENABLE_BITCODE en Xcode, también he intentado todo lo que he podido (admití que no soy un xcode pro) pero todavía no puedo hacer que el proyecto se compile para usarlo en mi teléfono de prueba.

Mi aplicación funciona bien en el simulador, pero no puedo implementarla en mi iPhone para realizar pruebas. En este último, acabo de instalar iOS 9 beta.

Ahora, aquí está el mensaje de error que recibo. Parece que la configuración no afecta la biblioteca PARSE.com, ¿eso es parte de mi proyecto? ¿Cómo puedo hacer que mi proyecto se implemente en mi teléfono? Gracias por cualquier consejo

Ld /Users/xxxxxx/Library/Developer/Xcode/DerivedData/graffiti- bnmizxueojwiqcbbnsvilljhosrw/Build/Products/Debug-iphoneos/Pods/Parse.framework/Parse normal armv7 cd /Users/xxxxxx/Documents/DigitalTempusDev/graffiti/Pods export IPHONEOS_DEPLOYMENT_TARGET=8.0 export PATH="/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode-beta.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch armv7 -dynamiclib -isysroot /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk -L/Users/xxxxxx/Library/Developer/Xcode/DerivedData/graffiti-bnmizxueojwiqcbbnsvilljhosrw/Build/Products/Debug-iphoneos/Pods -L/Users/xxxxxx/Documents/DigitalTempusDev/graffiti/Pods/Parse -F/Users/xxxxxx/Library/Developer/Xcode/DerivedData/graffiti-bnmizxueojwiqcbbnsvilljhosrw/Build/Products/Debug-iphoneos/Pods -filelist /Users/xxxxxx/Library/Developer/Xcode/DerivedData/graffiti-bnmizxueojwiqcbbnsvilljhosrw/Build/Intermediates/Pods.build/Debug-iphoneos/Pods-Parse.build/Objects-normal/armv7/Parse.LinkFileList -install_name @rpath/Parse.framework/Parse -Xlinker -rpath -Xlinker @executable_path/Frameworks -Xlinker -rpath -Xlinker @loader_path/Frameworks -miphoneos-version-min=8.0 -dead_strip -fembed-bitcode-marker -ObjC -lParseLib -lz -framework AudioToolbox -framework CFNetwork -framework CoreGraphics -framework CoreLocation -framework QuartzCore -framework Security -framework StoreKit -framework SystemConfiguration -weak_framework Accounts -weak_framework Social -ObjC -fobjc-arc -fobjc-link-runtime -framework AudioToolbox -framework Bolts -framework CFNetwork -framework CoreGraphics -framework CoreLocation -framework Foundation -framework QuartzCore -framework Security -framework StoreKit -framework SystemConfiguration -single_module -compatibility_version 1 -current_version 1 -Xlinker -dependency_info -Xlinker /Users/xxxxxx/Library/Developer/Xcode/DerivedData/graffiti-bnmizxueojwiqcbbnsvilljhosrw/Build/Intermediates/Pods.build/Debug-iphoneos/Pods-Parse.build/Objects-normal/armv7/Parse_dependency_info.dat -o /Users/xxxxxx/Library/Developer/Xcode/DerivedData/graffiti-bnmizxueojwiqcbbnsvilljhosrw/Build/Products/Debug-iphoneos/Pods/Parse.framework/Parse --- ld: warning: -weak_framework is treated as -framework when used with -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES). Weak linking may still happen based on availability mark-up in headers ld: warning: -weak_framework is treated as -framework when used with -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES). Weak linking may still happen based on availability mark-up in headers ld: ''/Users/xxxxxx/Documents/DigitalTempusDev/graffiti/Pods/Parse/libParseLib.a(PFSQLiteDatabase.o)'' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture armv7 clang: error: linker command failed with exit code 1 (use -v to see invocation)


¿Está seguro de que ha seleccionado Enable Bitcode de Enable Bitcode en NO contra la configuración de compilación que está utilizando (por ejemplo, DEBUG )? Puede verificarlo en project-> target-> build settings-> search enable bitcode -> set NO en DEBUG (es bueno recordar intentar actualizar las bibliotecas antes del lanzamiento de la prueba, tal vez ya contenga bitcode). Luego edite el esquema -> Ejecutar -> verifique si tiene la configuración de DEBUG atm.


Acabo de configurarlo para mi proyecto.

MyProjectTarget -> Configuración de compilación -> Activar código de bits = NO


Como todos decían, la respuesta está establecida Enable Bitcode de Enable Bitcode en No en la configuración de compilación , pero creo que algunos de ustedes podrían estar interesados ​​en hacerlo desde la línea de comandos .

Mi proyecto Xcode está siendo generado por Unity y no quiero ninguna intervención manual en la configuración del proyecto Xcode. Tal vez haya una mejor manera o una herramienta que pueda editar la Configuración de compilación un poco como PlistBuddy permite actualizar valores en archivos plist . No conozco ninguna herramienta que haga esto para la configuración de compilación, así que estoy usando sed .

sed: ejecuta reemplazos basados ​​en expresiones regulares.

Cómo configurar Enable Bitcode de Enable Bitcode en No desde la línea de comandos:

Aquí, el nombre de mi proyecto es Unity-iPhone así que ejecuto el siguiente comando desde la raíz de mi proyecto Xcode:

sed -i -e ''s/ENABLE_BITCODE = YES;/ENABLE_BITCODE = NO;/g'' / Unity-iPhone.xcodeproj/project.pbxproj

-e - especifica comandos sed para ejecutar
-i - edita archivos en el lugar, ejecutando scripts por separado para cada archivo

Elimine -i si solo desea una vista previa de lo que hace;)

Tenga en cuenta que todas sus configuraciones de compilación se cambiarán con este comando, la línea ENABLE_BITCODE = YES; apareció 6 veces en mi project.pbxproj .

¡Ahora mis pasos de compilación se pueden automatizar completamente ya que fastlane se encarga del resto!


Si no encuentra el indicador enable_bitcode. Haga clic en la pestaña "Todo" en la barra de herramientas superior al lado de la barra de búsqueda.


Si su Bitcode no se muestra, seleccione Todos. Cuando xcode selecciona Basic, tu opción Bitcode no se muestra.

Cuando selecciona Todo, puede ver Bitcode. Luego, configure No para la configuración de anuncios


También me enfrenté al mismo problema en Xcode7. Solución para esto:

  • ir al PROJECT
  • Settings compilación
  • seleccione All Tab
  • escriba en la búsqueda Enable Bitcode
  • Update Flag a No (que estará debajo de su proyecto (segunda columna))

Tenga en cuenta que para los proyectos que usan CocoaPods, debe establecer ENABLE_BITCODE = NO tanto en el proyecto como en los objetivos del proyecto del contenedor Pods.

Este error

Ld /Users/maximveksler/Library/Developer/Xcode/DerivedData/ParseUI-gwtgmlgbpobjfjfjgkiwdahqveos/Build/Products/Debug-iphoneos/ParseTwitterUtils.framework/ParseTwitterUtils normal arm64 cd /Users/maximveksler/Developer/ParseUI-iOS/Pods export IPHONEOS_DEPLOYMENT_TARGET=9.0 export PATH="/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode-beta.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch arm64 -dynamiclib -isysroot /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk -L/Users/maximveksler/Library/Developer/Xcode/DerivedData/ParseUI-gwtgmlgbpobjfjfjgkiwdahqveos/Build/Products/Debug-iphoneos -L/Users/maximveksler/Developer/ParseUI-iOS/Pods/ParseTwitterUtils -F/Users/maximveksler/Library/Developer/Xcode/DerivedData/ParseUI-gwtgmlgbpobjfjfjgkiwdahqveos/Build/Products/Debug-iphoneos -filelist /Users/maximveksler/Library/Developer/Xcode/DerivedData/ParseUI-gwtgmlgbpobjfjfjgkiwdahqveos/Build/Intermediates/Pods.build/Debug-iphoneos/ParseTwitterUtils.build/Objects-normal/arm64/ParseTwitterUtils.LinkFileList -install_name @rpath/ParseTwitterUtils.framework/ParseTwitterUtils -Xlinker -rpath -Xlinker @executable_path/Frameworks -Xlinker -rpath -Xlinker @loader_path/Frameworks -miphoneos-version-min=9.0 -dead_strip -fembed-bitcode-marker -ObjC -lParseTwitterUtilsLib -lsqlite3 -lz -framework AudioToolbox -framework CFNetwork -framework CoreGraphics -framework CoreLocation -framework QuartzCore -framework Security -framework StoreKit -framework SystemConfiguration -weak_framework Accounts -weak_framework Social -fobjc-arc -fobjc-link-runtime -framework AudioToolbox -framework Bolts -framework CFNetwork -framework CoreGraphics -framework CoreLocation -framework Foundation -framework Parse -framework QuartzCore -framework Security -framework StoreKit -framework SystemConfiguration -single_module -compatibility_version 1 -current_version 1.8.1 -Xlinker -dependency_info -Xlinker /Users/maximveksler/Library/Developer/Xcode/DerivedData/ParseUI-gwtgmlgbpobjfjfjgkiwdahqveos/Build/Intermediates/Pods.build/Debug-iphoneos/ParseTwitterUtils.build/Objects-normal/arm64/ParseTwitterUtils_dependency_info.dat -o /Users/maximveksler/Library/Developer/Xcode/DerivedData/ParseUI-gwtgmlgbpobjfjfjgkiwdahqveos/Build/Products/Debug-iphoneos/ParseTwitterUtils.framework/ParseTwitterUtils ld: ''/Users/maximveksler/Developer/ParseUI-iOS/Pods/ParseTwitterUtils/libParseTwitterUtilsLib.a(PFTwitterAuthenticationProvider.o)'' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

fue resuelto por:


Tuve un problema similar con la biblioteca de cacao de GoogleAnalytics, y la biblioteca no estaba compilando para iPhone 6 con iOS 8.

Mi solución fue pasar a NO el indicador "Habilitar código de bits" en el destino del proyecto de aplicación, no en el proyecto Pods.


pruebe este comando en la terminal si no puede cambiar la configuración de BITCODE dentro del proyecto,

xcodebuild -target "target" -configuration "configuración" ENABLE_BITCODE = NO