Неопределенные символы для архитектуры armv7 - route-me library, ad hoc only
Я прочитал все другие вопросы, связанные с этой темой, и не могу найти свой ответ. Мой проект использует route-me. Он прекрасно подходит как для симулятора, так и для подключенного iPad. Архив для ad hoc не будет строить. Я успешно создал специальный архив - и установил его - до реализации route-me. Моя ошибка:
Неопределенные символы для архитектуры armv7:
"_ApplicationVersion", на который ссылаются:
- [RMWebTileImage startLoading:] в libMapView.a (RMWebTileImage.o)
"_ApplicationNameFromBundle", на который ссылаются из:
- [RMWebTileImage startLoading:] в libMapView.a (RMWebTileImage.o)
ld: символ (ы) не найден для архитектуры armv7
Моя библиотека правильно связана - она безошибочно создает симулятор и iPad. я должен
[RMMapView class];
в контроллере представления, который отображает карту. До появления этой строки мое приложение зависало, если оно было установлено из архива с iTunes - хотя оно не зависало при установке из Xcode. Теперь архив не будет собираться вообще. (Но я все еще верю, что приведенная выше строка поставила меня на правильный путь).
Я испробовал все возможные решения, которые мне удалось найти здесь. Если я удаляю ссылки на RMWebTileImage.h и RMWebTileImage.m - я получаю те же ошибки, за исключением того, что имеет смысл. Но когда я снова добавляю ссылки, я все равно получаю сообщение об ошибке, как будто на файлы даже не ссылаются.
Любая помощь будет оценена.
1 ответ
Похоже, что статическая библиотека route-me не имеет символов armv7. Проверьте параметры сборки библиотеки и убедитесь, что параметры сборки архитектур настроены на сборку для armv6 и armv7.
Вы также всегда можете использовать lipo -info
в вашей статической библиотеке, чтобы увидеть все включенные архитектуры.
Если вы связываете конфигурацию Debug, она в основном настроена на сборку только для активных архитектур. Убедитесь, что настройки сборки проектов идентичны настройкам проекта route-me.