Недавно я добавил статическую библиотеку (mobclix) в свой проект iPhone, который потребовал от меня установить базовый SDK на 3.0. Эта библиотека, как утверждается, совместима с 2.2 и до сих пор выглядит так, как будто это правда. Я установил цель развертывания проекта в 2.2. Проблем нет.Как указать версию совместимости для dylib в проектах iPhone?
Теперь, я также использую libxml2 в этом же проекте. По-видимому, libxml2.2.dylib в ОС 3.0 новее, чем в OS 2.X (соответственно версии 10 и 9). Однако мой код, который использует libxml2, уже совместим с версией libxml2, включенной в OS 2.X. Поскольку мне нужно было установить Base SDK на 3.0, «совместимость версии/минимальная версия/зависимость» автоматически устанавливается в более новую версию libxml2. Когда я пытаюсь запустить приложение в OS 2, я получаю эту ошибку во время выполнения (очевидно):
Dyld Error Message:
Library not loaded: /usr/lib/libxml2.2.dylib
Referenced from: /Users/Martijn/Library/Application Support/iPhone Simulator/User/Applications/4D5456DE-F297-4DF4-ACA6-DA8BBBBBA914/Luisterpaal.app/Luisterpaal
Reason: Incompatible library version: Luisterpaal requires version 10.0.0 or later, but libxml2.2.dylib provides version 9.0.0
Можно ли отменить требование о версии где-нибудь? Или другие идеи для решения этой проблемы?
Ваши ошибки из попытки запустить его в тренажере, делает это на самом деле произошло на реальном оборудовании, а? Двоичная совместимость между версиями симулятора - это совсем другое, что совместимость между собственно прошивкой iPhone OS. –
Я все еще жду сообщения о сбоях. Судя по видимым симптомам (сбой приложения при запуске), это может быть проблемой ... –
Это также происходит на устройстве. –