2011-05-25 27 views
0

即时得到这个错误在某些机器在编译我的项目:IOS:错误在编译谟与MGTwitterEngine

Undefined symbols for architecture armv6: 
"_xmlFree", referenced from: 
-[MGTwitterLibXMLParser initWithXML:delegate:connectionIdentifier:requestType:responseType:URL:]  in MGTwitterLibXMLParser.o 
-[MGTwitterLibXMLParser _nodeValueAsString] in MGTwitterLibXMLParser.o 
-[MGTwitterLibXMLParser _nodeValueAsDate] in MGTwitterLibXMLParser.o 
-[MGTwitterLibXMLParser _nodeValueAsInt] in MGTwitterLibXMLParser.o 
-[MGTwitterLibXMLParser _nodeValueAsBool] in MGTwitterLibXMLParser.o 

它编译在模拟器模式很好,但不是设备(IOS 4.3)

如何摆脱这个?

回答

2

将libxml2框架添加到您的目标。

在Xcode 3中,通过右键单击边栏中的框架并选择“添加现有框架”来实现。我不知道你在Xcode 4中做了什么,对不起。

从MGTwitterEngine自述:

  1. 在其他框架中添加libxml2.dylib。你会发现库 在:

    /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.0.sdk/usr/lib/libxml2.dylib

  2. 添加“$ SDKROOT的/ usr/include/libxml2“作为您的 项目设置中的标题搜索路径。

+0

我已经做到了,否则我猜如果不会在模拟器中编译,是否有任何具体的操作为设备做? – 2011-05-26 12:05:20

0

通过libxml2.2.dylib替换libxml2.dylib lib目录下:问题解决;)

1

我前几天遇到同样的问题,于是我跟着下面的步骤:

  • 你只需要添加libxml2.dylib框架。
  • 并在标题搜索路径中添加/usr/include/libxml2

它为我工作。