gpt4 book ai didi

linux - 找不到 XML/LibXML.pm 和 cpan 找不到 c 编译器生成

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:31:27 26 4
gpt4 key购买 nike

我需要在 Linux 机器中使用 LibXML,并且像其他帖子一样出现下一个错误:

Can't locate XML/LibXML.pm in @INC 

我看到了解决方案,但我遇到的问题是,当尝试使用 cpan 生成库时,显示找不到编译器的错误。我正在寻找我的问题的答案,我找到了使用 apt-get 或 mcpan 安装的方法,但没有获得 apt-get 或 aptitude 命令,我只能使用 ipkg install perl_libXML 或 cpan。

下一个是 cpan 的错误:

perl -MCPAN -e shell
Terminal does not support AddHistory.

cpan shell -- CPAN exploration and modules installation (v2.00)
Enter 'h' for help.

cpan[1]> install XML::LibXML
Reading '/root/.cpan/Metadata'
Database was generated on Sat, 01 Nov 2014 19:17:02 GMT
Running install for module 'XML::LibXML'
Running make for S/SH/SHLOMIF/XML-LibXML-2.0117.tar.gz
Checksum for /root/.cpan/sources/authors/id/S/SH/SHLOMIF/XML-LibXML-2.0117.tar.gz ok
Scanning cache /root/.cpan/build for sizes
............................................................................DONE

CPAN.pm: Building S/SH/SHLOMIF/XML-LibXML-2.0117.tar.gz

Use of uninitialized value $config_val in pattern match (m//) at inc/Devel/CheckLib.pm line 372.
Couldn't find your C compiler
Compilation failed in require at Makefile.PL line 92.
BEGIN failed--compilation aborted at Makefile.PL line 92.
Warning: No success on command[/usr/bin/perl Makefile.PL]
SHLOMIF/XML-LibXML-2.0117.tar.gz
/usr/bin/perl Makefile.PL -- NOT OK
Running make test
Make had some problems, won't test
Running make install
Make had some problems, won't install
Could not read metadata file. Falling back to other methods to determine prerequisites
Failed during this command:
SHLOMIF/XML-LibXML-2.0117.tar.gz : writemakefile NO '/usr/bin/perl Makefile.PL' returned status 512

cpan[2]>

我不知道为什么使用 ipkg 安装可以,但安装后就不行了。我认为如果进程找到 c 编译器,cpan 会起作用,但我不知道是哪个问题或如何告诉 cpan 编译器的路径,或者是否需要安装它。

我尝试手动编译,结果是这样的,但我不明白为什么没有编译器,我的系统有几个编译器。错误是:

root@Linux: ~/.cpan/build/XML-LibXML-2.0117-tF5gWA # perl Makefile.PL DEBUG=1
Use of uninitialized value $config_val in pattern match (m//) at inc/Devel/CheckLib.pm line 372.
Couldn't find your C compiler
Compilation failed in require at Makefile.PL line 92.
BEGIN failed--compilation aborted at Makefile.PL line 92.
root@Kubyx: ~/.cpan/build/XML-LibXML-2.0117-tF5gWA #

你能帮我解决问题还是手工编译?

最佳答案

我找到了我系统的答案。

x86_64-linux-gnu-gcc 是作为参数提供给 perl 的 GCC 二进制文件的可执行文件。所以 Devel::CheckLib 在我的 Ubuntu 发行版上找不到 C 编译器,不要使用我正在使用的 gcc-5 版本创建 x86_64-linux-gnu-gcc 的替代品。

解决方法是更改​​为/usr/bin 并创建一个从 x86_64-linux-gnu-gcc 到 x86_64-linux-gnu-gcc-5 的符号链接(symbolic link)。

这不是我第一次需要符号链接(symbolic link)到 GCC 的替代名称。 Ubuntu 发行版应该为所有可用的 gcc 版本创建一个替代方案,并使用 update-alternatives 自动管理替代方案。

关于linux - 找不到 XML/LibXML.pm 和 cpan 找不到 c 编译器生成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26707780/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com