символ (ы) не найден для архитектуры armv6 - PullRequest
5 голосов
/ 31 октября 2011

Пожалуйста, помогите мне из-за ошибки ниже.

Я работаю над графиками с использованием сторонних фреймворков (libIPhonecharting), все работает нормально в симуляторе, но когда я пытаюсь создать файл .app для установки на устройстве IPAD, я получаю следующее сообщение об ошибке.

игнорирование файла /Users/xyz/Desktop/xyzIPAD/library/4.0/Release-iphoneos/libIPhoneCharting.a, файл был создан для архива, который не связан с архитектурой (ARMv6)

Неопределенные символы для архитектуры armv6: "_OBJC_CLASS _ $ _ DTCStroke", ссылка от: objc-class-ref в DemoLineChart.o "_OBJC_CLASS _ $ _ IPCBar3DChart", на который ссылаются из: objc-class-ref в DemoBar3DChart.o "_OBJC_CLASS _ $ _ IPCLineChart", на который ссылаются из: objc-class-ref в DemoLineChart.o "_OBJC_CLASS _ $ _ DTCDefaultCategoryDataset", на который ссылаются из: objc-class-ref в DemoBar3DChart.o objc-class-ref в DemoLineChart.o "_DTC_STROKE_CAP_SQUARE", на который ссылаются из: + [DemoLineChart (Private) getRenderWithRender:] в DemoLineChart.o "_OBJC_CLASS _ $ _ IPCTitle", на который ссылаются из: objc-class-ref в DemoBar3DChart.o objc-class-ref в DemoLineChart.o "_DTC_STROKE_JOIN_BEVEL", на который ссылаются из: + [DemoLineChart (Private) getRenderWithRender:] в DemoLineChart.o ld: символ (ы) не найден для архитектуры armv6 collect2: ld вернул 1 статус выхода

Ответы [ 3 ]

18 голосов
/ 02 мая 2012

Вот как у меня возникла эта проблема:

Я добавил .h, .m и NIB из другого проекта, перетащив их в навигатор проекта.Xcode не добавил их в фазы сборки должным образом.

Мое решение этой проблемы:

  • Перейти к цели в меню навигатора
  • Нажмите на вкладку «Фазы сборки»
  • Добавьте файл .m в «Компиляция источников» (либо перетащите его, либо используйте кнопку +)
  • Добавьте .xib в "Копирование ресурсов пакета"
  • Очистка и сборка

Это работает для меня, большое вам спасибо

2 голосов
/ 31 октября 2011

Несколько вопросов: есть ли у вашего внешнего lb собственный проектный файл?Если это так, убедитесь, что он настроен на сборку на arm6 и arm7 правильно.Сделайте то же самое для вашего основного файла проекта.Кроме того, какая версия XCOde у вас?Существуют значительные различия между различными версиями.

Посмотрите на схему libs (в зависимости от используемой версии XCode) и убедитесь, что она правильно настроена для отладки на устройстве iOS;Я предполагаю, что вы собираете свое собственное устройство для целей отладки: эта рекомендация из-за: «файл был создан для архива, который не является связываемой архитектурой (armv6)» *

После того, как вы попробуете каждую из этих вещей, обязательноочистить весь проект перед каждой сборкой.

Надеюсь, это поможет.Я чувствую твою боль, XCOde зла.

0 голосов
/ 21 февраля 2013

Я решил эту проблему, добавив отсутствующий фреймворк в target-> Build Phases-> Link Binary With Libraries

...