Как мне создать приложение и среду на OS X 10.6, которая может работать на 10.5? - PullRequest
2 голосов
/ 12 апреля 2010

Вот моя ситуация: у меня есть исходный код стороннего фреймворка, который я хочу включить в свой проект. Я работаю на 10.6, но хочу поддерживать 10.5, поэтому базовый SDK и цель развертывания установлены на 10.5.

Я могу построить фреймворк и приложение, и приложение работает внутри XCode и на компьютере. Однако, это терпит неудачу на 10.5.8 и вылетает. В отчете о сбое говорится

Unknown required load command 0x80000022

Я также попытался построить фреймворк на машине 10.5.8, задав архитектуру «32/64-bit Universal». Перемещение этого фреймворка на компьютер версии 10.6 и попытка создать приложение работает, но приложение не запускается, выдавая несколько ошибок:

-[NSCFArray matchAndAssemble:]: unrecognized selector sent to instance 0x3503c0

Кто-нибудь видел это раньше? Знаете ли вы об исправлении или обходном пути? Это не может быть необычной ситуацией.

Ответы [ 2 ]

2 голосов
/ 13 апреля 2010

Пометляемая команда загрузчика является командой загрузчика для сжатого двоичного файла, который является двоичным типом, поддерживаемым только в 10.6.

matchAndAssemble: не является (документированным) методом NSArray / NSMutableArray. Это, однако, метод комплекта PKParser. Это тот каркас, который вы пытаетесь построить?

Во всяком случае, что-то в вашем проекте строится только для 10.6, и это, вероятно, тот каркас. Проверьте настройки сборки для всех ваших целей и любых целей любых подпроектов и выполните otool -l на любых сторонних платформах, чтобы найти команду 22 load.

0 голосов
/ 12 апреля 2010

Ответ за первую ошибку: невозможно прочитать неизвестную команду загрузки 0x80000022 - переполнение стека , и это может иметь отношение ко второй ошибке. Какую версию Xcode и SDK вы используете?

...