#iphone #ios #ios4 #tesseract
#iPhone #iOS #ios4 #тессеракт
Вопрос:
У меня есть приложение, которое использует некоторые сторонние библиотеки, например библиотеку Tesseract. Приложение было разработано в Xcode 3 с SDK 4.0 и работало идеально. Но несколько дней назад я решил обновить свой Xcode и SDK. Итак, я установил XCode 4.0.2 с SDK 4.3. Конечно, после обновления я перестроил все зависимые библиотеки, включая Tesseract, используя SDK 4.3. Ошибок во время сборки не было. Все было так же, как и при сборке под SDK 4.0. Но когда я запускаю приложение под управлением simulator (4.1, 4.2, 4.3), я получаю следующую ошибку:
Обнаружена попытка вызвать символ в системных библиотеках, которого нет на iPhone: откройте $UNIX2003, вызванный из функции _ZN9tesseract15TessdataManager4InitEPKci в image APP_NAME. Если вы столкнулись с этой проблемой при запуске двоичного файла симулятора в gdb, убедитесь, что вы сначала отключили запуск с оболочкой.
Я также пробовал это на устройстве с ios 4.3, где приложение просто вылетает в том же месте.
Но приложение продолжает успешно работать под управлением simulator / device 4.0.
Кто-нибудь знает, в чем проблема и как я могу сделать свое приложение работоспособным под ios 4.1 ?
Ответ №1:
Просто чтобы закрыть вопрос.
Все библиотеки для iphone simulator должны быть собраны с опцией -mmacosx-version-min = 10.4.