我试图将GData XML包含到我当前的项目中。 然而,迄今为止没有成功,由于一个超出我的范围的错误,build设失败..: 由于我正在为iPhone(和iPhone模拟器,为了完整性)构build,我不知道为什么它关心i386无论如何。 但是,包括libxml2在内的整个事情还是有点超出了我的舒适区 – 我是第一次这样做。 为了设置所有的标志和searchpath,我指的是本教程的第4步。 我无法添加OTHER_CFLAGS标志,因为在LLVM GCC 4.2 – 语言中已经存在一个同名的关键字。 所以我试图把它设置为-DDEBUG = 1 ,但是这并没有改变任何东西。 那么,如何让事情正常工作呢? 看起来像GData XML的文档是稀疏的 – 你能推荐任何解释的东西比我发现的链接更好的资源? 编辑: 由于koregan在他的评论中提出这个问题,我想补充说,它不能编译iPhone模拟器和实际的设备。 如果为设备构build错误是一个稍微不同的(不包括i386部分),但是:
我正在使用URLSessionDataTask从API下载XML文件。 XML看起来像这样: <?xml version="1.0" encoding="UTF-8" ?> <ResultList id="12345678-0" platforms="A;B;C;D;E"> <Book id="1111111111" author="Author A" title="Title A" price="9.95" … /> <Book id="1111111112" author="Author B" title="Title B" price="2.00" … /> <Book id="1111111113" author="Author C" title="Title C" price="5.00" … /> <ResultInfo bookcount="3" /> </ResultList> 有时XML可能有数千本书。 我正在使用Libxml2中的SAXparsing器parsingXML。 在parsing时,我创build了一个对象Book并像这样设置了XML的值: private func startElementSAX(_ ctx: UnsafeMutableRawPointer?, name: UnsafePointer<xmlChar>?, prefix: UnsafePointer<xmlChar>?, URI: UnsafePointer<xmlChar>?, nb_namespaces: […]
我试图在我的IOS项目中集成libxml2.dylib ,我已经链接链接库二进制库中的目标生成阶段,它工作正常,当我在模拟器上运行它,但抛出链接器命令失败,退出代码1使用-v来查看调用) 当试图在设备上运行时 找不到-lxml2错误,我还在Build设置中的其他链接器标志中添加了-lxml2,仍然无法完成。我是初学者,任何意见,这是高度赞赏。我使用Xcode 6.1和IOS SDK 8.1。
当使用iOS 7 SDK时,由于libxml2中的更改,我不得不更改一个库的一行,以使用xmloutput缓冲区的新输出缓冲区访问器方法。 NSData * result = [[[NSData alloc] initWithBytes:outputBuffer->buffer->content length:outputBuffer->buffer->use] autorelease]; 导致编译错误“typesstruct_xmlBuf的不完全定义”。 使用新的访问器方法成为: NSData * result = [[NSData alloc] initWithBytes:xmlOutputBufferGetContent(outputBuffer) length:xmlOutputBufferGetSize(outputBuffer)]; 这工作正常,但是当在iOS 6上运行时,没有意外地发现与提及libxml2.2.dylib的新方法的“懒符号绑定失败:符号未find”。 你怎样才能有条件地做这种改变的方式,将与基础SDK iOS 7编译,仍然在iOS 5,6和7上运行? 注意:像其他问题一样,在运行时检查iOS版本是不够的,因为旧线路不再编译。 我一直在考虑和考虑: 检查xmlOutputBufferGetContent != NULL ,始终为true 使用libxml2.2而不是libxml2 检查LIBXML_DOTTED_VERSION ,总是2.9.0 检查LIBXML2_NEW_BUFFER定义的新方法始终为true 所有这些导致在编译之前或之后总是只select一行,主要基于SDK。 处理非iOS项目中这一变化的其他几个人(Google Googling)似乎总是针对一个版本的libxml进行编译。
在DDXMLNode.h上 我的项目通过cocoapods导入XMPPFramework,如: pod 'XMPPFramework', '~> 3.6.6' 我find了一些方法: 1. header search paths添加“$(SDKROOT)/ usr / include / libxml2” 2. Other Linker Flags添加“-lxml2” 3. Framework Search Path添加“/usr/lib/libxml2.dylib” 所有不工作!
我有使用KissXML Objective-C库的Swift Framework项目。 KissXML内部使用libxml。 当我build立xcode项目(Xcode 6 – beta 5)时,我得到这个错误: error: <unknown>:0: error: '/SwiftFramework/SwiftFramework/KissXML/DDXMLNode.h:2: include of non-modular header inside framework module SwiftFramework.DDXMLNode 我已经看到这个答案 ,公开相关的头文件。 我已经这样做了,但我不知道如何解决在DDXMLNode.h中导入的这个头文件的情况,这并不是我的项目的明确部分: #import <libxml/tree.h> 有关如何处理这个问题的任何build议? 注意:我只在一个Objective-C项目上使用了KissXML,它工作正常(Xcode 5)。
我试图使用任何一个基于libxml的第三方XMLparsing器,但我不能,因为我认为我有某种libxml2的问题 我将其他链接器标志设置为-lxml2 和头文件searchpath到/ usr / include / libxml2 但是当我尝试编译时,我仍然会遇到大量未定义的符号。 下面的错误是试图编译TouchXML的结果。 Undefined symbols: "_xmlDocDumpFormatMemory", referenced from: -[CXMLDocument description] in CXMLDocument.o "_xmlXPathNewContext", referenced from: -[CXMLNode nodesForXPath:error:] in CXMLNode.o -[CXMLNode(CXMLNode_NamespaceExtensions) nodesForXPath:namespaceMappings:error:] in CXMLNode_XPathExtensions.o "_xmlOutputBufferFlush", referenced from: -[CXMLNode XMLStringWithOptions:] in CXMLNode.o "_xmlNodeListGetString", referenced from: -[CXMLNode stringValue] in CXMLNode.o "_xmlFree", referenced from: _xmlFree$non_lazy_ptr in CXMLDocument.o _xmlFree$non_lazy_ptr in CXMLNode.o (maybe you […]
晚上我更新了我的iPhone到iOS 6.1,我的当前版本的Xcode不会build立到手机,因为我需要最新的版本。 我从xcode 4.5.2到xcode 4.6,我在我的项目文件中做了0个更改。 什么用于编译完全罚款,现在给我一个文件没有find错误 #import <libxml/tree.h> 'libxml/tree.h' file not found 我有我的searchpath正确链接 $(SDKROOT)/usr/include/libxml2 libxml2在构build阶段被链接和需要。 编辑: 奇怪我改变了我的searchpath,以下瞧。 /usr/include/libxml2 不知道为什么这个问题解决了这个问题,有谁能够告诉我在xcode中有什么改变?