Нет бинарной архитектуры. Липо не удалось обнаружить какие-либо архитектуры в исполняемом файле пакета - предыдущие ответы не сработали - PullRequest
0 голосов
/ 14 ноября 2018

Я недавно добавил фреймворк в свой проект xcode (SquareReaderSDK.framework) и теперь получаю эту проблему всякий раз, когда я пытаюсь загрузить или проверить ее:

No architecture in the binary. Lipo failed to detect any architectures in the bundle executable

Это работает нормальнолокально на всех устройствах (я тестировал на iPad под управлением самой последней ОС и на более старой версии под управлением 9.3.5) - это происходит только после архивации и попытки проверить / загрузить.

Я нашелчисло других людей с похожими проблемами, но ни одно из исправлений, кажется, не делает это для меня:

  • Имя и идентификатор пакета верны
  • Перезапуск XCode, перезапуск pod install, очистка проекта ничего не изменила

Мне удалось загрузить его, выполнив ряд причудливых шагов, которые нужно будет изменить для производства, поскольку они ограничивают архитектуры, на которые я могу развернуть:

  • Мне нужно было настроить целевое устройство для развертывания, а не Generic iOS Device.Я знаю, что мне нужно найти способ не делать этого, или я не могу загрузить его на свой старый iPad
  • Мне пришлось установить Build Active Architecture Only на Yes.Я думаю, это тоже нужно будет изменить, иначе я столкнусь с той же проблемой, что и первый маркер
  • В связанных платформах с библиотеками, которые я выбрал Optional вместо Required.Это должно остаться таким, чтобы заставить его работать на всех старых устройствах (эта платформа работает только на iOS 11 +).
  • Под Фазы сборки / Встроенные рамки Я не выбралCode Sign On Copy для SquareReaderSDK.framework.Я не знаю, нужно ли это менять, я добавил это, потому что другие предлагали удалить фазу сборки, чтобы решить эту проблему
    • Мне пришлось добавить скрипт запуска в качестве финальной фазы сборки в качестве одной из инструкцийв настройке Square Reader для iOS: FRAMEWORKS="${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}" "${FRAMEWORKS}/SquareReaderSDK.framework/setup"

Любая вариация в этой комбинации шагов кажется мне первоначальной ошибкой.Любые идеи?

Я могу поделиться любой дополнительной информацией, которая может быть полезной

1 Ответ

0 голосов
/ 04 декабря 2018

Моя проблема была связана с SquareReaderSDK.framework.Существует скрипт установки, созданный Square, который необходим для запуска его на устройстве.Однако в процессе архивации часть этого скрипта удаляет архитектуры, которые SquareReaderSDK не поддерживает.Мне пришлось закомментировать эти строки, чтобы обеспечить правильную работу процесса архивации и проверки, а затем обработать неподдерживаемые архитектуры в коде

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...