标签: libxml2

正确的方法来链接来自iPhone/CocoaTouch库的库

我正在为iPhone编写一个静态库,我想知道我在做什么,或者我应该采取不同的方法.

我写的静态库依赖于libxml2.libxml2有一个动态库(dylib)和一个静态库(a).我尝试了两种方法.

方法一 - 当我尝试通过将"-lxml2"添加到"其他链接器标志"来链接静态库时,构建失败并显示以下消息:

/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/libtool: file: -lxml2 is not an object file (not allowed in a library)
Run Code Online (Sandbox Code Playgroud)

方法二 - 我可以成功链接静态库中的动态库,但我不确定iPhone上是否允许(或正确的方法).即使我正在构建静态库,Apple是否允许链接动态库的静态库?我还在学习静态库,但是根据我的理解,来自dylib的代码将与我的代码结合起来构成一个库,因此与dylib的链接应该不是问题.

总结一下:

  • mylibrary.a - > libxml2.a [不起作用]
  • mylibrary.a - > libxml2.dylib [构建,但这是正确的,可以接受吗?]

iphone static-libraries libxml2 static-linking

7
推荐指数
2
解决办法
6394
查看次数

如何使用Perl的XML :: LibXML提取标签中的属性?

我有一个XML文件

<PARENT >
<TAG string1="asdf" string2="asdf" >
</TAG >
</PARENT>
Run Code Online (Sandbox Code Playgroud)

我想在这里提取string2值..而且我想将它设置为一个新值..

怎么做?

perl libxml2

7
推荐指数
2
解决办法
1万
查看次数

在Win32中构建最新的iconv和libxml2二进制文件

我正在努力让MinGW和MSYS工作,所以我可以在Windows中构建iconv和libxml2,但是我发现./configure和make会给出很多与BSD/Unix相关的错误,这些错误不够具体到google,而不是描述性足以让我弄清楚.任何人都可以通过一些步骤来获得在Win32机器上构建的iconv和libxml2 .dll/.lib吗?

我正在为一些软件更新库,我今天整天都在忙着解决这个问题并且没有想到它.我得到了最新的libpng,zlib和curl,没有任何问题,但我发现这些库没有太多支持或操作方法,就像其他库一样.任何帮助将非常感谢,提前感谢您的时间.

詹姆士

c++ mingw msys iconv libxml2

7
推荐指数
1
解决办法
1万
查看次数

在Xcode 3.2.5和SDK 4.2上链接错误libxml2.dylib

我正在尝试使用oauth库连接到twitter.该库需要添加libxml2.dylib.将此添加到SDK 4.1或更低版本时,项目构建成功.但是当我使用xcode 3.2.5和SDK 4.2时,我得到了关于丢失标题的错误

我只是将libxml2.dylib添加到框架然后从目标配置中添加"$ {SDKROOT}/usr/include/libxml2"到标题搜索路径.

我收到错误:libxml/xmlreader.h:没有这样的文件或目录.

我试图添加的twitter oauth库是Twitter + OAuth,这是一个教程,你可以看到它有的src项目,在SDK 4.1上正常工作,甚至不能在SDK4.2 http://mobile.tutsplus编译. COM /教程/ iphone/Twitter的API-iphone /

我错过了什么?

iphone sdk libxml2 mgtwitterengine ios-4.2

7
推荐指数
1
解决办法
8146
查看次数

哪个lxml和libxml2更适合在Python中解析格式错误的html?

对于格式错误的HTML,哪一个更好,更有用?
我找不到如何使用libxml2.

谢谢.

python lxml html-parsing libxml2

7
推荐指数
1
解决办法
4260
查看次数

libxml2导致内存泄漏

我正在使用libxml2编写XML解析器.实际上,我完成了它,但有一个非常讨厌的内存问题.该程序首先从我的数据库中获取一些链接,所有这些链接指向XML文件.我用curl下载它们.这个过程很简单:我下载一个文件,然后解析它,依此类推......

问题似乎是解析完成时.Curl下载下一个文件,但似乎没有释放以前的XML,因为我猜libxml2将它加载到RAM中.在解析最后一个XML时,我发现自己有一个~2.6GB的泄漏(是的,其中一些文件非常大......)我的机器只有4GB的RAM.它目前有效,但将来会有更多链接添加到数据库中,所以我现在必须修复它.

我的代码非常基础:

xmlDocPtr doc;
doc = xmlParseFile("data.xml");

/* code to parse the file... */

xmlFreeDoc(doc);
Run Code Online (Sandbox Code Playgroud)

我试过用:

xmlCleanupParser();
Run Code Online (Sandbox Code Playgroud)

但是医生说:"它不会释放任何与文件相关的记忆." (http://xmlsoft.org/html/libxml-parser.html#xmlCleanupParser)

所以,我的问题是:有人知道如何释放所有这些文件相关的内存吗?

c libxml2

7
推荐指数
1
解决办法
6223
查看次数

Nokogiri说Libxml2的版本高于2.9.0已被打破,是吗?

安装上的消息是这样说的,但我找不到任何引用."目前已知的被打破",但知道的人,什么问题呢?我检查了Nokogiri代码库并发布了日志,但我找不到对此的引用.

这里的消息(相关部分)Nokogiri(本例中为v1.6.3.1)给出:

IMPORTANT!  Nokogiri builds and uses a packaged version of libxml2.

If this is a concern for you and you want to use the system library
instead, abort this installation process and reinstall nokogiri as
follows:

    gem install nokogiri -- --use-system-libraries

If you are using Bundler, tell it to use the option:

    bundle config build.nokogiri --use-system-libraries
    bundle install

However, note that nokogiri does not necessarily support all versions
of libxml2.

For example, libxml2-2.9.0 …
Run Code Online (Sandbox Code Playgroud)

ruby libxml2 nokogiri

7
推荐指数
1
解决办法
1980
查看次数

打开模块'Swift'的导入文件:不是目录

按照这里的说明在Swift上设置libxml: libxml/tree.h没有这样的文件或目录

编译时遇到错误,说:

Opening import file for module 'Swift': Not a directory
Run Code Online (Sandbox Code Playgroud)

我在网上搜索过,他们建议清理那个对我不起作用的项目.知道是什么导致了这个错误吗?

libxml2 swift

7
推荐指数
1
解决办法
2720
查看次数

LIBXML_NOENT是做什么的(为什么不叫LIBXML_ENT)?

在PHP中,可以将可选参数传递给各种XML解析器,其中之一是LIBXML_NOENT。该文档对此有以下说法:

LIBXML_NOENT(整数)
替代实体

Substitute entities信息不是很丰富(什么实体?何时替换?)。但是我认为可以假设或的NOENT缩写是公平的,因此在我看来,可以合理地假设此标志会禁用(外部)实体的解析。NO_ENTITIESNO_EXTERNAL_ENTITIES

但是事实并非如此:

$xml = '<!DOCTYPE root [<!ENTITY c PUBLIC "bar" "/etc/passwd">]>
<test>&c;</test>';
$dom = new DOMDocument();
$dom->loadXML($xml, LIBXML_NOENT);
echo $dom->textContent;
Run Code Online (Sandbox Code Playgroud)

结果是回显了/ etc / passwd的内容。没有LIBXML_NOENT论点,事实并非如此。

对于非外部实体,该标志似乎没有任何作用。例:

$xml = '<!DOCTYPE root [<!ENTITY c "TEST">]>
<test>&c;</test>';
$dom = new DOMDocument();
$dom->loadXML($xml);
echo $dom->textContent;
Run Code Online (Sandbox Code Playgroud)

该代码的结果为“ TEST”,带有和不带有LIBXML_NOENT

该标志似乎对诸如的预定义实体没有任何影响&lt;

所以我的问题是:

  • LIBXML_NOENT旗帜到底是做什么的?
  • 为什么叫它LIBXML_NOENT?它的缺点是什么?不适合LIBXML_ENTLIBXML_PARSE_EXTERNAL_ENTITIES更适合?
  • 是否有一个标志实际上阻止了所有实体的解析?

php xml libxml2 xml-parsing

7
推荐指数
1
解决办法
2991
查看次数

无法在r中安装XML包

我正在尝试在r中安装"XML"包,但是会发生错误.
请告诉我出了什么问题.

OS:OS X 10.11.6
R版本:3.3.2
执行"install.packages("XML")时的错误消息如下.

* installing *source* package ‘XML’ ...
** package ‘XML’ successfully unpacked and MD5 sums checked
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc …
Run Code Online (Sandbox Code Playgroud)

xml r libxml2

7
推荐指数
2
解决办法
3511
查看次数