【问题标题】:Problems with installing XML::LibXML on ActiveState Perl 5.16.0. on Windows在 ActiveState Perl 5.16.0 上安装 XML::LibXML 时出现问题。在 Windows 上
【发布时间】:2016-11-22 11:25:52
【问题描述】:

我正在努力在 ActiveState Perl 版本 5.16.0 上设置 LibXML。

到目前为止,我按照这篇文章How can I install Lib::XML on ActiveState Perl 5.20?的说明进行操作:

First, get the libxml2 binaries from http://xmlsoft.org/sources/win32/ (currently also available at http://www.zlatkovic.com/pub/libxml/).

You need:

iconv-VERSION.win32.zip
libxml2-VERSION.win32.zip
zlib-VERSION.win32.zip
Download the latest version of each. (Each package will probably have a different version.) When you extract them, you'll get directories named iconv-VERSION.win32, libxml2-VERSION.win32, and zlib-VERSION.win32, each containing bin, lib, and include directories.

Combine all the bin, include, and lib directories under c:\Prog\LibXML. (You can use any directory you prefer; just adjust the instructions accordingly.)

Get the latest version of XML-LibXML from CPAN. Extract it.

Issue these commands in the XML-LibXML-VERSION directory:

perl Makefile.PL INC=-Ic:\Prog\LibXML\include LIBS=-Lc:\Prog\LibXML\lib
dmake
copy c:\Prog\LibXML\bin\*.dll blib\arch\auto\XML\LibXML
dmake test
dmake install

所以我下载了所有的包,一切正常,我可以运行 makefile.pl

但是当我现在尝试运行 dmake 时,我收到以下错误:

Devel.o:Devel.c:(.text+0x985): undefined reference to `_imp__xmlMemStrdup'
LibXML.o:LibXML.c:(.text+0x4374): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0x4d5b): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0x513c): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0x52bb): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0x5c23): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0x5d13): more undefined references to `_imp__xmlFree' follow
LibXML.o:LibXML.c:(.text+0xef7a): undefined reference to `_imp__xmlMalloc'
LibXML.o:LibXML.c:(.text+0xefb6): undefined reference to `_imp__xmlMalloc'
LibXML.o:LibXML.c:(.text+0xf042): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0xf053): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0xf907): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0x10384): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0x10399): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0x106f9): more undefined references to `_imp__xmlFree' follow
LibXML.o:LibXML.c:(.text+0x2a092): undefined reference to `_imp__xmlIsBaseCharGroup'
LibXML.o:LibXML.c:(.text+0x2a171): undefined reference to `_imp__xmlIsDigitGroup'
LibXML.o:LibXML.c:(.text+0x2a1d4): undefined reference to `_imp__xmlIsCombiningGroup'
LibXML.o:LibXML.c:(.text+0x2a1ed): undefined reference to `_imp__xmlIsExtenderGroup'
LibXML.o:LibXML.c:(.text+0x2a211): undefined reference to `_imp__xmlIsBaseCharGroup'
LibXML.o:LibXML.c:(.text+0x2a374): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0x2a4b7): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0x2a60c): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0x2a720): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0x2a72a): undefined reference to `_imp__xmlFree'
LibXML.o:LibXML.c:(.text+0x2a76f): more undefined references to `_imp__xmlFree' follow
perl-libxml-mm.o:perl-libxml-mm.c:(.text+0x7fa): undefined reference to `_imp__xmlMalloc'
perl-libxml-mm.o:perl-libxml-mm.c:(.text+0x831): undefined reference to `_imp__xmlMalloc'
perl-libxml-mm.o:perl-libxml-mm.c:(.text+0x97d): undefined reference to `_imp__xmlFree'
perl-libxml-mm.o:perl-libxml-mm.c:(.text+0xfa4): undefined reference to `_imp__xmlMalloc'
perl-libxml-mm.o:perl-libxml-mm.c:(.text+0x1004): undefined reference to `_imp__xmlFree'
perl-libxml-mm.o:perl-libxml-mm.c:(.text+0x168c): undefined reference to `_imp__xmlFree'
perl-libxml-mm.o:perl-libxml-mm.c:(.text+0x16a5): undefined reference to `_imp__xmlFree'
perl-libxml-mm.o:perl-libxml-mm.c:(.text+0x1795): undefined reference to `_imp__xmlFree'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x1a34): undefined reference to `_imp__xmlMalloc'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x1a65): undefined reference to `_imp__xmlMalloc'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x1aab): undefined reference to `_imp__xmlFree'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x1af4): undefined reference to `_imp__xmlFree'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x1b67): undefined reference to `_imp__xmlMalloc'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x1bf0): undefined reference to `_imp__xmlMalloc'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x1d04): undefined reference to `_imp__xmlFree'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x271a): undefined reference to `_imp__xmlFree'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x272f): undefined reference to `_imp__xmlFree'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x2839): undefined reference to `_imp__xmlFree'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x2847): undefined reference to `_imp__xmlFree'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x28e1): more undefined references to `_imp__xmlFree' follow
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x5ce5): undefined reference to `_imp__xmlMalloc'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x5d94): undefined reference to `_imp__xmlMalloc'
perl-libxml-sax.o:perl-libxml-sax.c:(.text+0x5efc): undefined reference to `_imp__xmlFree'
xpath.o:xpath.c:(.text+0x260): undefined reference to `_imp__xmlFree'
xpath.o:xpath.c:(.text+0x2ab): undefined reference to `_imp__xmlFree'
xpath.o:xpath.c:(.text+0x3e7): undefined reference to `_imp__xmlFree'
collect2.exe: error: ld returned 1 exit status
dmake.exe:  Error code 129, while making 'blib\arch\auto\XML\LibXML\LibXML.dll'

有谁知道如何解决这个问题?非常感谢任何帮助!

谢谢!

【问题讨论】:

  • 您是否在任何代理下?你是如何安装这个的?
  • 来自经验:这是一个巨大的痛苦,但它捆绑在 Strawberry perl 中。这就是我切换的原因。
  • ` 可以运行 makefile.pl` 显示你是如何运行它的。展示您如何为 prereqs 组合各种二进制文件。需要您提供更多信息
  • 如果你没有使用任何代理,这应该可以工作cpan install Lib::XML
  • 我在公司网络中,所以我在代理下运行

标签: xml perl libxml2 xml-libxml dmake


【解决方案1】:

正如您所说,您正在使用代理。跟着这个去:

您可以使用这些命令从 ppm 或 cpan 安装模块。

打开命令提示符并运行以下命令:

set http_proxy=http://xxx.xxx.xxx.x:yyyy (xxx is your system proxy and yyyy is port)
set http_proxy_user=username (system login username)
set http_proxy_pass=password (login password)

从 cpan 类型安装模块:

cpan install modulename

【讨论】:

  • 我试过这个,但它没有找到 xml2 或 libxml2 然后:检查链接到 xml2 的能力...没有检查链接到 libxml2 的能力...libxml2、zlib 和/或数学未找到库 (-lm)。
  • 如果我用 ppm 试一下,它只会说“没有要安装的软件包”
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-13
  • 2014-07-23
  • 1970-01-01
相关资源
最近更新 更多