安装 perl 模块:cpan shell 与 rpm/deb

发布于 2024-12-13 05:27:23 字数 75 浏览 0 评论 0原文

我只是想知道 - 与通过包管理安装相比,从 cpan shell 安装 perl 模块有什么优势吗?除了偶尔更快地访问最新模块版本之外?

I just wonder - are there any advantages to installing perl modules from the cpan shell compared to installing them by package management? Apart from occasionally having quicker access to the latest modules version?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

场罚期间 2024-12-20 05:27:23

嗯,这完全取决于模块的预期用途。

本机包管理有很多优点:

  • Perl 模块将与您的系统完美集成,例如
    文件位于正确的(取决于系统)位置,脚本添加到
    PATH等
  • 自动升级和安全补丁。
  • 可能是关心你的维护者或维护者小组
    模块(例如 Debian Perl 组)。
  • 特定于发行版的错误可以在成为主流之前修复
    (可能有或没有平台特定知识)。
  • 当部署到具有相同操作系统版本的计算机时,您可以认为软件包依赖关系是理所当然的。

直接从 CPAN 安装时,您还有一些优势:

  • 您可以安装最新版本的模块。
  • 您可以安装该模块的特定版本(较旧版本或开发人员版本)。
  • 您可以微调模块的编译或安装参数。

如今, local::libperlbrew (howto)已制定了 CPAN对于开发人员来说更有趣。 local::lib 让您在使用系统的 perl 二进制文件时拥有私有模块树perlbrew 可以让您轻松创建自己的完整 Perl 安装(还有多个 Perl 版本)并行)。

两种方法都是有效的,并且如上所述,优点取决于预期用途。

Well, it all depends on the intended use of the modules.

The native package management has many advantages:

  • The Perl modules will integrate perfectly with your system, e.g.
    files are in the right (system-dependant) place, scripts added to the
    PATH, etc.
  • Automatic upgrades and security patching.
  • Probably a maintainer or maintainer group that care about your
    modules (e.g. the Debian Perl group).
  • Distribution-specific bugs can be fixed before reaching mainstream
    (that may or not have the platform specific knowledge).
  • When deploying to machines with the same OS-version, you can take the packages dependencies for granted.

When installing directly from CPAN, you also have some advantages:

  • You can install the latest release of the module.
  • You can install an specific version (older or developers's release) of the module.
  • You can fine-tune the compilation or installation parameters of the module.

Nowadays, local::lib and perlbrew (howto) has made the CPAN way a lot more interesting for a developer. local::lib lets you have your private module tree while using the system's perl binary and perlbrew lets you easily create your own complete Perl installations (also several Perl releases in parallel).

Both ways are valid, and as said, the advantage depends on the intended usage.

∞觅青森が 2024-12-20 05:27:23

使用本机 CPAN 客户端可以访问 CPAN 上的所有模块,其中大多数模块可能不是由您的发行版打包的,但代价是您的发行版的包管理器不知道它们已安装(用于依赖项解析等) 。我知道 Debian 提供了 dh-make-perl 软件包用于将 CPAN 模块转换为 debs,这似乎应该为您提供两全其美的功能,但我自己从未尝试过。

不过,最重要的是选择一种方法并坚持下去。

Using a native CPAN client gives you access to all modules on CPAN, most of which probably aren't packaged by your distro, but at the cost of your distro's package manager not knowing that they're installed (for dependency resolution, etc.). I know that Debian provides the dh-make-perl package for converting CPAN modules to debs, which seems like it should give you the best of both worlds, but I've never tried it myself.

The most important thing, though, is to pick one method or the other and stick with it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文