Я выполнил инструкции на http://damienh.org/2009/06/20/setting-up-mgtwitterengine-with-yajl-106-for-iphone-development/, чтобы попытаться получить копию MGTwitterEngine, компилируемую в XCode.
У меня установлен YAJL как фреймворк и OAuthConsumer как фреймворк в проекте. Когда я пытаюсь собрать свой проект, я получаю следующие ошибки:
Ld build/Debug-iphonesimulator/UFrame.app/UFrame normal i386
cd /Users/twhume/Documents/Projects/UFrame
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/twhume/Documents/Projects/UFrame/build/Debug-iphonesimulator -L/Users/twhume/Documents/Projects/UFrame -F/Users/twhume/Documents/Projects/UFrame/build/Debug-iphonesimulator -F/Users/twhume/Documents/Projects/UFrame -F/Users/twhume/Documents/Projects/UFrame/../../../Desktop/tmp/obj-c/OAuthConsumer/build/Release -filelist /Users/twhume/Documents/Projects/UFrame/build/UFrame.build/Debug-iphonesimulator/UFrame.build/Objects-normal/i386/UFrame.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -framework Foundation -framework UIKit -framework CoreGraphics -framework YAJLiOS -lxml2 -framework OAuthConsumer -o /Users/twhume/Documents/Projects/UFrame/build/Debug-iphonesimulator/UFrame.app/UFrame
Undefined symbols:
"_OBJC_CLASS_$_OAConsumer", referenced from:
objc-class-ref-to-OAConsumer in MGTwitterEngine.o
"_OBJC_CLASS_$_OAToken", referenced from:
objc-class-ref-to-OAToken in MGTwitterEngine.o
"_OBJC_CLASS_$_OAMutableURLRequest", referenced from:
objc-class-ref-to-OAMutableURLRequest in MGTwitterEngine.o
"_OBJC_CLASS_$_OARequestParameter", referenced from:
objc-class-ref-to-OARequestParameter in MGTwitterEngine.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
Я относительно новичок в Xcode, но мне это кажется ошибкой связывания: библиотеки OAuth каким-то образом не включаются. Но я не совсем уверен, что здесь происходит, и поиск в Google ответа не помог. Я подозреваю, что проблема может заключаться в моем незнании Xcode, а не в чем-либо еще.
Я также пробовал загрузить и собрать фреймворк OAuthConsumer с нуля и включить его (вместо того, чтобы включать версию, поставляемую с исходным кодом MGTwitterEngine). Это не имело значения. Я чистил, перестраивал и так далее. Я также удостоверился, что libxml2.dylib включен в группу «Связать двоичный файл с библиотеками» в рамках цели моего проекта.
Есть идеи, как это решить?