2016-08-10 2 views
20

Когда я пытаюсь Архивирую мое заявление на Xcode 7.3.1, я получаю следующее сообщение об ошибке:ошибка: Invalid версия битового кода (Производитель: '800.0.35.0_0' Читатель: '703.0.31_0')

error: Invalid bitcode version (Producer: '800.0.35.0_0' Reader: '703.0.31_0') clang: error: linker command failed with exit code 1 (use -v to see invocation)

Я смог успешно Архивировать свое приложение вчера, может ли кто-нибудь мне помочь?

+0

Это очень выглядит, как если бы вы создали приложение с XCode 8 бета-версии и в настоящее время используют XCode 7 для архивирование. Или, может быть, XCode смешивает две версии во время процесса сборки (компиляция с версией 8 и связь с версией 7). – Codo

+0

Нет. Я создал свое приложение с помощью Xcode 7.3.1 – Vaisakh

+0

Но у вас была или была установлена ​​XCode 8 бета, правильно? – Codo

ответ

11

Установить Xcode 8: https://developer.apple.com/download/

Xcode 8 GM seed may be used to submit apps to the App Store.

Подробнее: В моем случае я обновил до последней Facebook IOS SDK 4.15.1. Поскольку эта библиотека была обновлена ​​с помощью Xcode 8, и я все еще использовал Xcode 7.3.1, она вызвала ошибку.

https://developers.facebook.com/docs/ios/change-log-4.x

Updated for Xcode 8 GM and iOS 10.

Таким образом, двойная проверка третьих сторон библиотеки.

Или если вы не возражаете отключить биткод: Перейдите к битрейту поиска настроек и измените «Включить биткод» на «Нет».

+0

Отредактированный ответ, чтобы предложить установить Xcode 8, чтобы исправить проблему. – Nate

6

Я также столкнулся с той же проблемой, и, как было предложено @Nate, , проблема возникла из-за стороннего SDK, интегрированного в наш проект с использованием Cocoapods.

Чтобы помочь мне выяснить, кто из 15 стручков я имел в проекте был ответственным, я сделал следующее:

  1. Создать новый Xcode проект
  2. Скопируйте Podfile из исходного проекта каталог вновь созданного проекта
  3. Do стручок установить
  4. Удалите один или несколько из pods⋆
  5. Archive новый проект, и посмотреть, если это удастся, если не повторить шаг 4, пока вы не в состоянии Архив

⋆ (вы также можете попробовать что-то вроде бинарного поиска, в котором вы удаляете первую половину стручки в вашей Podfile и посмотреть, если новый проект архивы)

После того, как вы выяснили библиотеку вызывая выпускайте, продолжайте снижать библиотеку, явно указывая версию в подфайле, пока проект не будет архивироваться успешно. И затем вы можете использовать эту версию библиотеки для архивирования и загрузки в магазин приложений.

+1

В моем случае компилятор уже показал, что Flurry-iOS-SD вызывает проблему, просто понижая на один шаг решение проблемы. – Bharat

2

Я также столкнулся с этой ошибка: Invalid версии битового кода (Производитель: «800.0.24.1_0» Читатель: «703.0.31_0») Я так много прибегая к помощи, но не смогли найти правильное решение. Я попробовал сам и решил это возможно В моем случае эта ошибка возникает после добавления FBSDK путем перетаскивания, которое мы все обычно делаем.
Вы можете решить эту проблему, выполнив следующие действия:

  1. Удалить все стручка скрипт в сборках фаз.
  2. Удалите файл FBSdks с перетаскиванием из проекта.
  3. Выход Xcode и удаление 3 вещи "папки Pod", "Podfile.lock" и "Projectworkspace"
  4. Поиск и добавить FBSDK pod ссылки в podfile
  5. Установите стручок снова с помощью терминала .... теперь открыты Xcode архивируйте свою сборку проекта.
+0

Ты спасешь мой день. –

2

хорошие решения, но отключение битового кода для некоторых людей.

Редактировать: - Это сработало и для меня. , но в будущем ваше приложение может быть в проблеме или (не оптимизировано Appstore), если ваш проект ** Bitcode Disable **.

Bitcode is an intermediate representation of a compiled program. Apps you upload to iTunes Connect that contain bitcode will be compiled and linked on the App Store. Including bitcode will allow Apple to re-optimize your app binary in the future without the need to submit a new version of your app to the store.

Note: For iOS apps, bitcode is the default, but optional. If you provide bitcode, all apps and frameworks in the app bundle need to include bitcode. For watchOS apps, bitcode is required

Так вот зачем пытаться правильно разобраться в решениях об ошибках.

+1

спасибо за редактирование @Ravi. – DeyaEldeen

15

я имел эту ошибку перед ... вы можете попробовать следующее решение он работал для меня

поиск ключевого слова в битового кода приложения -> Build Settings и измените его на NO затем архивировать снова ->

он должен работать хорошо сейчас

enter image description here

+1

Это помогло мне. Некоторые полезные пояснения о битоде и ссылки на статьи с плюсами и минусами приведены здесь: https://stackoverflow.com/a/30831010/9190 – Guerry

+0

большое спасибо Guerry :) –

3

Если вы используете библиотеку или стручок, что означает, что один из них построен более высокой версии текущего Xcode , вы можете либо обновить свой код, либо вернуться к предыдущей версии, где контейнеры были созданы вашей текущей версией. Если вы выполнили обновление pod update, обновите содержимое контейнеров, если вы запустили установку pod, проверьте даты модулей по сравнению с датой выпуска вашего Xcode, которая приведет вас к ответственному контейнеру.

Я получил его в то время как я строила с помощью Xcode 8.2.1 и стручок построенный Xcode 8.3.1

+0

xcode_select "/ Applications/Xcode \ 83.app" в Fastfile исправлена ​​проблема. (У меня есть 3 версии Xcode.) –

Смежные вопросы