Debian : confliciting perl installations on a system 上的 Perl

标签 perl debian cpan apt

我将 Debian 开发系统(作为测试)上的所有 perl 模块更新为最新版本。我想看看在实时服务器上升级模块是否安全。它似乎工作,除了我开始从 Imager 收到一个奇怪的错误(与 API 版本号有关,但现在这并不重要)。

我尝试重新安装 Imager 和任何相关的库,但似乎没有解决问题。

进一步看,我发现有问题的开发系统似乎有多个 perl 目录,包括:

/usr/lib/perl (which contains 5.14.2 and subdirs)
/usr/lib/perl5 (which contains a range of perl modules)
/usr/local/lib/perl (which contains another 5.14.2 and a set of modules)
and even /root/perl5 (which contains a small list of modules including i486-linux-gnu-thread-multi-64int)

看起来(尽管我不完全确定我是否正确阅读了此内容),系统上的模块已使用每种可能的方法安装,apt-get、aptitude、cpan、从源代码安装和 cpanminus,并且不同的模块是最终进入不同的 perl 目录(我猜是安装),主要是/usr/local/lib/perl 或/usr/lib/perl5。我不知道那里至少有 2 个不同的 perl 安装。

我认为/usr/lib/perl 是我想要保留的,
所以,我尝试将/usr/local/lib/perl 重命名为 perl.save 然后
链接/usr/local/lib/perl/usr/lib/perl。
然后我重新安装了所有丢失的软件包。
大多数软件包似乎都安装了,但是我收到了这个不祥的消息;

有/usr/local/lib/perl/5.14.2

想要/usr/lib/perl/5.14

您的 perl 和您的 Config.pm 似乎对
他们正在运行的架构。

Perl 认为:[5.14.2]

配置说:[i486-linux-gnu-thread-multi-64int]

这可能会也可能不会导致问题。请检查您的 perl 安装
如果您在构建此扩展时遇到问题。

之后,该特定模块的安装失败。可能有充分的理由。

我想解决这个问题的原因是我们的开发系统都是虚拟的,而所有其他开发系统都是这个(损坏的)系统的克隆 - 所以这是一个我需要解决的问题,而不需要从头开始重建整个系统(虽然他是一个选项)。

我确实尝试克隆系统,然后清除 perl,但是这给我留下了一个非常 splinter 的系统,无法做任何事情。

有关解决此问题的有用方法的任何想法?
谢谢

最佳答案

有许多使用“local::lib”模块的“perl virtualenv”项目。这使您可以在本地目录中为您的特定应用程序安装东西。如果使用得当,这些将覆盖系统中的任何内容。

这个,https://github.com/stoned/pll , 使用 cpanm 以便您可以安装到您的虚拟环境中。

这可能不是您想要的,但需要考虑。

关于Debian : confliciting perl installations on a system 上的 Perl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10506314/

相关文章:

perl - 这种 Canary::Stability 咆哮是合理的担忧吗?

php - 交响乐 : Unable to find the socket transport "http"

sockets - 在openSUSE中工作的套接字在Debian中不工作吗?

ruby-on-rails - 安装 libapache2-mod-passenger 软件包后是否需要运行 Passenger-install-apache2-module ?

regex - 在 Perl 代码中改进(优化)现有字符串替换的任何建议?

perl - 是否有一个 Perl 模块来监控电子邮件队列?

ubuntu - 如何为 Nikto 扫描仪安装 ssl 支持??我正在尝试安装 ssl 库依赖项。帮助我实现它

为 IN 子句传递 DBI-> 执行值时出现 perl 错误

regex - 我必须如何声明 Perl 拆分的正则表达式?

regex - 如何找到嵌套深度超过一个括号 '()' 集的句子?