В исполняемом файле отсутствует требуемая архитектура armv6

Я использую xCode 4.2 и пытаюсь развернуть мое приложение. Я отказываюсь от проверки со следующим сообщением об ошибке:

application executable is missing a required architecture armv6

Значение для моих архитектур установлено в стандартное (armv7). Это единственный вариант в раскрывающемся списке. Базовый SDK: iOS 5.0 (это единственный вариант) SDK развертывания: 3.2 Только встроенная активная архитектура: НЕТ Действительные архитектуры: armv6 armv7 armv7f armv7k

Кто-нибудь, пожалуйста, знает решение этой проблемы?

Ответ 1

В Xcode 4.2 GM это все еще проблема, но вы можете решить ее, выполнив следующие действия.

  • Переключиться на просмотр файлов/папок в проекте xcode

  • Выберите проект (синий значок)

  • Выберите приложение в разделе "Цели" в середине экрана.

  • Перейти к настройкам сборки

  • Найти архитектуры > Распространение

  • Разверните этот раздел, чтобы вы могли видеть как Debug, так и Release

  • Измените "Стандарт (armv7) - $(ARCH_STANDARD_32_BIT)" на "Другое..."

  • Замените "Стандартный (armv7) - $(ARCH_STANDARD_32_BIT)" на "armv6", затем добавьте новый элемент "armv7"

Помните, что вам может понадобиться сделать это для всех включенных проектов aka frameworks, таких как TAPKU

enter image description here

Ответ 2

Для Xcode 4.5 установите цель развертывания как минимум для iOS 4.3, и это решит проблему. armv6 и более ранние версии iOS почти вымерли.

Ответ 3

Простой способ сделать это:

1) Щелкните значок проекта в левом нижнем углу ( синий значок, под кнопкой "Выполнить" ).

2) Рядом с иконкой проекта (справа от нее) щелкните левой кнопкой мыши по имени проекта в разделе "ПРОЕКТ" (белый фон).

3) Выберите вкладку "Настройки сборки" и найдите подменю "Архитектуры" (Первый). Щелкните левой кнопкой мыши по "Стандартное (armv7) $(ARCH_STANDARD_32_BIT)" и выберите "Другое..."

4) Нажмите значок "-" , чтобы удалить исходное значение ("$ (ARCH_STANDARD_32_BIT)" ). Нажмите значок "+" и напишите "armv6" (без двойных кавычек). Нажмите значок "+" и добавьте "armv7" (также без двойных кавычек). Нажмите "Готово" .

5) Убедитесь, что Только для создания активной архитектуры установлено "Нет" (это должно быть)

6) Рядом с иконкой проекта (справа от нее) щелкните левой кнопкой мыши по имени название проекта в разделе "ЦЕЛИ" и повторите шаги 3, 4 и 5.

7) Нажмите cmd + I на клавиатуре (или Продукт → Профиль в меню Xcode) и проверьте, все ли в порядке.

Ответ 4

Моя среда была Xcode 4.5.1. Изменение двух вещей решило эту проблему для меня.

  • Настройка цели развертывания как минимум для iOS 4.3.
  • Сохранение архитектуры armv7 в списке "Архитекторы" в настройках сборки и удаление всех остальных (включая armv6) явно.

Ответ 5

Я наткнулся на этот вопрос при поиске решения для предупреждения:

warning: iPad: application executable is missing a required architecture.
At least one of the following architecture(s) must be present: armv7 (-19033)
Unable to validate your application. - (null)

Другие ответы не помогли решить мою проблему, тогда я понял, что изменил значение CFBundleExecutable. Когда я вернулся к старой ценности, все прошло гладко.

Я не уверен, что является прямой причиной этого предупреждения, но по крайней мере я могу снова распространять Ad Hoc.

Ответ 6

Все ответы не помогли мне, используя Xcode 4.2.1.

То, что я сделал, заключалось в изменении Architectures от armv7 до armv6 armv7, и это сработало. Вот так:

enter image description here

Ответ 7

Добавление armv6 было лишь частично проблемой для меня, чтобы решить ту же проблему с Xcode 4.5. Мне также пришлось увеличить цель развертывания с iOS 4.1 до iOS 5.0, чтобы заставить ее работать. Много часов разочарования для такого простого исправления. Надеюсь, поможет.

Ответ 8

Для меня это помогло, когда я установил только armv6 в разделе Архитектуры