【问题标题】:Perl cross compilation issuePerl 交叉编译问题
【发布时间】:2011-12-16 05:00:44
【问题描述】:

我是 perl 交叉编译的新手。 我正在尝试从 www.perl.org 中给出的源代码安装 perl。 后面的命令是 ./Configure, Make, Make test。

要查找具体安装的路径,CLI“perl -V”显示错误如下。

# ./perl -V
Can't locate Config.pm in @INC (@INC contains: /usr/local/lib/perl5/5.9 .).
BEGIN failed--compilation aborted.

我认为我在路径包含方面犯了一些错误。 请告诉我交叉编译成功的原因和解决方法。

提前致谢。

【问题讨论】:

  • 您真的要安装 Perl 5.9 吗?那是一个非常古老的开发分支。您应该使用 Perl 5.14。
  • 您真的在进行cross 编译(即在一个平台上编译 Perl 源代码以在另一个平台上使用)吗?如果是(或不是),您使用的是什么平台?
  • @Quentin 我正在尝试安装 5.10.0。不知道为什么它在路径中是 5.9。我的机器由旧版本的 NetBSD 操作系统组成。我不太确定哪个 Perl 适合它。 Perl 5.10 也是如此。
  • @KeithThompson 是的,主机是 Linux,目标是 NetBSD。
  • 为什么不在 NetBSD 上编译呢?或者你可能可以install a binary package。请注意,Perl 5.10 仍然很老。它是四年前发布的。您是否有特定的理由不安装较新的 Perl?

标签: perl


【解决方案1】:

可能可以交叉编译 Perl(在 Linux 上构建并针对 BSD),但这样做没有多大意义。 NetBSD 与 Linux 一样能够在本地构建 Perl,这几乎肯定是您应该做的。

您可以按照安装说明从源代码构建它,或者更好的是 install a binary package,因为其他人已经为您完成了从源代码构建 Perl 的工作。

除非您对旧版本有非常特殊的要求,否则您应该安装最新的生产版本,我相信它是 5.14.2。

您在评论中提到,当您在目标 BSD 机器上从源代码构建 Perl 时,Make test 有 2 次失败。你有 99.86% 的成功率。当然这已经足够好了——而且你不可能通过交叉编译做得更好。您可能想研究这些故障和LD_LIBRARY_PATH 问题(我不知道应该为NetBSD 设置什么),但这些问题并不严重,您应该放弃并使用完全不同的方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-29
    • 2011-07-24
    • 1970-01-01
    • 1970-01-01
    • 2021-07-10
    • 1970-01-01
    • 1970-01-01
    • 2021-09-17
    相关资源
    最近更新 更多