Комиссионный фреймворк для iPhone - PullRequest
2 голосов
/ 01 сентября 2010

В настоящее время я застрял, пытаясь заставить мои сгенерированные файлы c скомпилироваться в моем проекте iPhone. По сути, он постоянно говорит мне, что для следующих четырех импортов такой директории нет:

Бережливость / TProtocol.h Бережливость / TApplicationException.h Бережливость / TProtocolUtil.h Бережливость / TProcessor.h

Я следую всем инструкциям на вики Thrift и скачал и скомпилировал фреймворк Thrift в XCode, но никакой информации, относящейся к разработке для iPhone, нет. Я почти уверен, что это проблема, характерная для проекта iPhone, потому что, если я создаю новый проект командной строки в XCode, я могу нормально импортировать эти файлы.

Ответы [ 2 ]

3 голосов
/ 02 сентября 2010

После того, как я воспользовался услугами какого-то колдуна, я понял, как заставить Thrift работать с iPhone / iPad (или, по крайней мере, заставить его скомпилироваться).

Во-первых, вы хотите получить файлы target-c с помощью этой команды, а не из вики:

svn co http://svn.apache.org/repos/asf/incubator/thrift/trunk/lib/cocoa/src/ thrift-cocoa

Затем создайте новый проект Xcode, перейдя в New Project, выбрав Framework & Library и Cocoa Framework. Нажмите создать и сохранить его где-нибудь приятно. Щелкните правой кнопкой мыши Targets и выберите Add -> New Target. Выберите «Какао Touch», а затем «Статическая библиотека». Дайте ему хорошее имя. Перейдите на вкладку «Сборка» цели в информации и измените Базовый SDK на iPhone Device (я использую 3.2, но вы можете использовать все что угодно) и измените Архитектуру на Стандартную (armv6 armv7) или Оптимизированную (armv7). Под вкладкой General добавьте основы и Cocoa.

Перетащите все файлы и папки, полученные из репозитория svn, в папку Classes в проекте. Установите флажок копировать элементы и установите флажки рядом с обоими целями. Удалите TSocketServer.h и .m из папок «Копировать заголовки» и «Компилировать источники» статической библиотеки соответственно. Теперь вы можете создать Статическую библиотеку (и опционально Framework).

Откройте проект, в котором вы хотите использовать Thrift, и перейдите на вкладку Общие вашей цели в информации. Добавьте статическую библиотеку, которую вы только что создали, в список связанных библиотек. Он должен быть назван libYOUR_TARGET_NAME.a. На вкладке «Сборка» перейдите в «Пути поиска по заголовкам» и добавьте путь к только что созданному проекту Thrift и установите флажок рекурсивного типа.

Наконец, вам просто нужно изменить операторы импорта в сгенерированном Thrift-коде, просто удалив скобки и заменив их кавычками. Теперь вы можете снова построить свой проект iPhone.

0 голосов
/ 01 сентября 2010

Попробуйте добавить эти файлы .h в ваш проект Xcode.

...