Использование GDataXMLDocument в приложении iPad - PullRequest
1 голос
/ 27 декабря 2010

Я пытаюсь использовать библиотеку GDataXML в своем приложении для iPad.Я следовал инструкциям:

  • Загрузите клиентскую библиотеку gdata-target-c.
  • Распакуйте файл, перейдите в Source \ XMLSupport и перетащите два файла GDataXMLNode.h и GDataXMLNode.m в ваш проект
  • В XCode нажмите «Проект»> «Изменить настройки проекта» и убедитесь, что «Все конфигурации» отмечены.
  • Найдите параметр «Пути поиска» \ «Пути поиска заголовка» и добавьте / usr /включите / libxml2 в список.
  • Наконец, найдите раздел «Связывание \ Другие флаги компоновщика» и добавьте -lxml2 в список.

Если в коде я добавлю #import "GDataXMLNode.h", все в порядке.Но когда я пытаюсь использовать класс GDataXMLDocument в своем приложении

GDataXMLDocument *doc = [[GDataXMLDocument alloc] initWithData:xmlData options:0 error:nil];

, я получаю следующее сообщение:

Ld build/Debug-iphonesimulator/DemoApp.app/DemoApp normal i386
cd /Users/svp/Projects/DemoApp
setenv MACOSX_DEPLOYMENT_TARGET 10.6
setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -L/Users/svp/Projects/DemoApp/build/Debug-iphonesimulator -F/Users/svp/Projects/DemoApp/build/Debug-iphonesimulator -filelist /Users/svp/Projects/DemoApp/build/DemoApp.build/Debug-iphonesimulator/DemoApp.build/Objects-normal/i386/DemoApp.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -framework Foundation -framework UIKit -framework CoreGraphics -framework MapKit -framework QuartzCore -lxml2.2 -o /Users/svp/Projects/DemoApp/build/Debug-iphonesimulator/DemoApp.app/DemoApp

Undefined symbols:
  "_OBJC_CLASS_$_GDataXMLDocument", referenced from:
      objc-class-ref-to-GDataXMLDocument in TwitterService.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

Есть мысли?

Ответы [ 3 ]

3 голосов
/ 28 декабря 2010

Звучит так, будто код GDataXMLNode.m не связан. Действительно ли этот исходный файл добавлен к цели, встроенной в XCode?

1 голос
/ 07 мая 2013

Лучше всего оставить исходный код нетронутым и попросить проект не применять механизм ARC к этому файлу.Для этого: 1- Выберите фазы сборки вашего проекта. 2- Выберите файл GDataXMLNode.m. 3- Добавьте переключатель: -fno-objc-arc только в этот файл (дважды щелкнув по нему)

Бинго!

Надеюсь, это поможет.

1 голос
/ 27 декабря 2010

Проверьте следующее:

  • Вы скопировали файл в свой проект или просто передали ссылку на файл.
  • Если вы не скопировали файл в свой проект (просто передали ссылку на него перетаскиванием или другими способами), убедитесь, что путь в «Пути поиска по заголовкам» обновлен правильно.

Похоже, вы пропустили обновление пути, по которому вы ссылаетесь на файл.

...