Ошибка сборки при попытке создать пример кода ABBYY Mobile OCR SDK - PullRequest
4 голосов
/ 25 января 2012

Я получил пробную лицензию от ABBYY и получил пробный SDK для iPhone. Но я не могу собрать и отладить проект на моем устройстве. Выдает ошибку: «_OBJC_CLASS _ $ _ CMocrManager», на которую ссылаются из:

Приложение отлично работает в симуляторе (с одним изображением, представленным в образце).

Пожалуйста, помогите, я прикрепил скриншот.

image

Ответы [ 2 ]

4 голосов
/ 03 февраля 2012

Я связался со службой технической поддержки abbyy mobile sdk и получил ответ относительно номера сборки:

"Я обнаружил, что нет возможности увидеть сборкуномер библиотеки dll в Mac OS (это можно было увидеть только в Windows, я извиняюсь за неудобства). "

А затем в отношении ошибки сборки я следовал приведенным им инструкциям:

Вы используете последнюю версию ABBYY Мobile OCR Engine, поэтому проблема в настройках проекта.

Ниже приведена инструкция по запуску примера для iPhone на Xcode.4.3, iPhoneSDK 5.1.

Когда вы запускаете Xcode и открываете проект «Sample.private.xcodeproj», Xcode отображает окно «Рабочая область».Панель инструментов обеспечивает быстрый доступ к группе кнопок «Вид» в правом верхнем углу.Нажмите здесь кнопку «Скрыть или показать навигатор» (или то же самое в главном меню xCode: «Вид» → «Навигаторы» → «Показать навигатор проекта»).

«Навигатор проекта» отображается в левой части окна рабочей области.содержащий один проект «Sample.private».

Щелкните значок проекта «Sample.private» в навигаторе проекта.Панель «Редактор проектов» появляется справа от навигатора проекта, отображая элемент Project → Sample.private и элемент Target → Sample.

Выберите Project → Sample.private и настройте следующие параметры ввкладка BuildSettings:

• Настройки сборки → раздел Архитектуры:

Базовый SDK = "Последняя версия iOS (iOS 5.1)" *

Сборка только для активной архитектуры = Да

Остальные настройки архитектуры должны стать автоматически:

Архитектуры = Стандартные (armv7)

Поддерживаемые платформы = iphonesimulator iphoneos

Допустимые архитектуры = armv6 armv7

• Укажите лицензию разработчика для параметра «Идентификация подписи кода» в разделе «Подписывание кода».

• Чтобы указать, какая версия ОС является минимальной для вашего приложения, установите целевой показатель развертывания iOS в разделе Развертывание.

Выберите Цели → Образец.Здесь также откройте вкладку «Параметры сборки» и сделайте почти то же самое, что и для Project → Sample.private:

• «Параметры сборки» → раздел «Архитектура»:

«Только активная архитектура» = Да

Проверьте остальные настройки архитектур:

Архитектуры = armv6

"Базовый SDK" = "Последняя версия iOS (iOS 5.1)" *

Поддерживаемые платформы = iphoneimulator iphoneos

Valid Architectures = armv6

• Укажите лицензию разработчика для параметра Идентификация подписи кода в разделе Подписывание кода.

• Чтобы указать, какая версия ОС является минимальной для вашего приложениябудет поддерживать, установите iOS Deployment Target в разделе Развертывание:

iOS Deployment Target = версия ОС iPhone, на которой планируется запуск образца.

Затем настройте схему Run Sample.app, чтобыоткрывается по умолчанию в главном меню xCode: «Продукт» → «Схема редактирования»:

• Параметром «Назначение» должно быть устройство iOS (вase, если в настоящее время мобильное устройство отключено от компьютера) или должно быть имя устройства, подключенного к вашему компьютеру в настоящее время, на котором вы собираетесь запустить образец.

• измените параметр Build Configurationна вкладке Info to iPhone.Debug.

Теперь попробуйте запустить образец на устройстве.

Кроме того, наши инженеры-тестировщики заметили, что вы можете получить сообщение типа «Ошибка запуска удаленной программы».: не удалось получить задачу для ххх. », когда образец установлен на устройстве и не работает в режиме отладки.Решение этой проблемы подробно описано на разных форумах разработчиков iOS.Вы можете попытаться решить эту проблему, удалив все профили инициализации, кроме профиля разработчика, с мобильного устройства.

И я смог успешно создать образец.

Tспасибо Николасу и Суровому за помощь в этом.

1 голос
/ 25 января 2012

Это проблема со связью.Предупреждение компоновщика, которое предшествует сообщению об ошибке, ясно говорит о том, что файл .a, который составляет SDK (libAbbyyMsdk.a), скомпилирован для архитектуры, которая отличается от архитектуры armv6, для которой предназначен проект.Либо вы связываетесь с поставщиком и запрашиваете у него целевую версию armv6 файла .a, либо вы нацеливаете свой проект на ту же архитектуру, что и файл .a.

...