【问题标题】:Learning Perl, but how do I get 5.14 on Windows?学习 Perl,但如何在 Windows 上获得 5.14?
【发布时间】:2011-10-31 11:59:39
【问题描述】:

所以我订购了 Learning Perl 第 6 版,我知道它使用的是 5.14,但 Strawberry Perl 只有 5.12,那么我有什么选择? 5.12 可以吗?还是会出现教的问题?

是我使用 Linux 的唯一选择吗?如果是这样,发行版建议将与说明或指向有关在所述发行版(或一般)中更新 perl 的说明的链接一起使用。我对 Linux 比较陌生,只安装过几次 Ubuntu,从来没有真正坚持过。完美的解决方案是一个适合安装在我家中的另一台 PC 上的发行版,这样我就可以远程桌面(或等效的,甚至 SSH,尽管 GUI 很好),因为我有一台旧 PC,我想安装一个新的硬盘开车进去乱搞。 (Pentium 4 的 RAM 比一个 gig 少一点,所以并不糟糕)

希望这个问题比我的前两个问题更具建设性,我期待您的回复。

编辑:如果可能并且如果它是最好的选择,任何 Linux 菜鸟的资源都会有很大的帮助。

【问题讨论】:

标签: windows linux perl


【解决方案1】:

我实际上还没有看过 Learning Perl 第 6 版,但如果您在使用 Perl 5.12 时遇到困难,我会感到非常惊讶。 Perl 5.14 对于大多数人来说仍然太新,无法编写需要它的代码。这本书可能会提到一些您在 5.12 中无法利用的特性,但它仍然应该解释如何仅使用 5.12 特性来完成任务。

我建议只使用当前的Strawberry Perl 而不必担心版本号。

更新:正如Mike 所指出的,这是序言的开头段落:

欢迎来到Learning Perl 第六版,针对 Perl 5.14 及其最新功能进行了更新。即使你还在使用 Perl 5.8,这本书还是不错的(虽然它发布已经很久了;你有没有想过升级?)。

这样可以确认您在尝试将 5.12 与第 6 版一起使用时没有问题。

【讨论】:

  • 我将此标记为答案,因为它几乎直接回答了我的问题。但我对 ActivePerl 很好奇,并在这些回复的 cmets 中询问过它。
  • 实际上,极少量的练习和代码使用 5.14(除非您在附录 III:Unicode 中)。
【解决方案2】:

使用 ActivePerl

这是一个非常好的产品,它是免费的,并且它有一个可靠的(大部分)PPM(Perl 包管理器)。我使用它,通常没有问题。它是一个二进制发行版,就像 Strawberry Perl,但你使用 PPM 来获取模块而不是 CPAN.pm。

注意:如果您只是因为这本书而获得 Perl 5.14,请不要。我得到了那本书(我也是初学者)并使用了 5.12.4。您几乎可以获得所有功能(除了少数 ;-)

【讨论】:

  • 除了发布的及时性之外,使用 ActivePerl 相对于 Strawberry 的主要优势是什么?
  • 我相信 ActivePerl 的模块安装更容易
【解决方案3】:

我不久前从 Windows 和 PHP 迁移到 Linux 和 Perl,并没有回头 - 但我不想在这里引发操作系统或编程语言大战。我的桌面运行的是 Ubuntu,但你可以坚持使用 Windows(我在 VirtualBox VM 中提供了 Windows,以备不时之需)。

您可以下载 Ubuntu Server ISO 并通过虚拟媒体管理器将其作为 CD/DVD 映像附加。然后,您可以根据需要设置任意数量的 Ubuntu 虚拟机。我使用非常基本的设置:

  • 内存:512MB
  • 硬盘:8GB 动态
  • 网络适配器:桥接

我配置了一些图像。一种是使用 Nginx + Catalyst 设置的,一种是使用 Bricolage CMS 和 Apache 设置的,还有一些其他变体(包括 PHP 变体)。使用 VM 的好处在于,您可以创建快照、复制图像、进行实验,并在出现问题时将其炸毁并重新启动。

您如何选择设置您的开发环境取决于个人选择。我使用SSHMenu 打开到我的开发服务器的四个 SSH 连接 - 这也将终端放置在我屏幕上的预定义位置。

我使用一个终端来运行代码、访问调试器等。我使用另一个终端来连接 DBMS 客户端(PostgreSQL / MySQL)。我使用另外两个来编辑代码和单元测试。我在终端中使用 Vim 作为我的编辑器。我也打算尝试 Emacs,但一直没有考虑。

我使用 git 作为我的版本控制系统,在单独的文件服务器上使用裸存储库。我确实是从 Mercurial 开始的,但似乎 Perl 世界的大部分人都在使用 git,所以我切换了。

我已将 GNOME 终端配置为使用漂亮的 Solarized 配色方案(您可以找到一个方便的脚本用于该 here)。

至于 Perl 版本:我不知道。我同意其他 cmets 关于使用标准包而不是尝试构建自己的包 - 特别是如果您是 Linux 新手。我刚刚查看了O'Reilly preview page,在前言中,它说“这本书很好,即使你还在使用 Perl 5.8”——所以你应该可以接受早期版本。您还需要注意,如果您计划使用 Perl 进行 Web 开发,您可能会受到您选择的托管服务提供商的限制,只能使用旧版本的 Perl。

还有一些想法:

  • Programming Perl 尽管年代久远,仍然是一个很好的资源。你已经完成了学习 Perl,也许还有中级 Perl,非常值得一读。关于模式匹配(正则表达式)的部分很棒。

  • Modern Perl 是一本非常好的读物。它写得很好,简洁,并且充满了非常有用的提示。

  • cpanm 是标准 CPAN 应用程序的绝佳替代品。

  • local::lib 非常有用。我用它来创建每个应用程序的 CPAN 模块集。这意味着我可以简单地将整个目录结构从我的开发服务器复制到应用程序服务器,而不必担心与可能使用相同模块的不同版本的其他应用程序发生冲突。 目前这可能与您无关,但是当您了解更多并开始使用大量 CPAN 模块时,它会非常方便。

一个快速的local::lib 示例:

mkdir -p ~/myapp/extlib
cpanm --prompt -L ~/myapp/extlib CPAN::Module1 CPAN::Module2 ...
eval $(perl -Mlocal::lib=~/myapp/extlib/)

~/myapp/scripts/myscript.pl:

use FindBin;
use local::lib "$FindBin::Bin/../extlib";

【讨论】:

  • Programming Perl 第四版将于明年初出版。
【解决方案4】:

你可以

  1. 安装 Windows,然后在 Windows 机器上的 VM 中运行 Ubuntu。你可以启动它,通过 ssh 连接它,然后搞乱它。

  2. 使用ActivePerl

【讨论】:

  • ActivePerl 的 +1。它包含适用于 Windows 的 Perl 5.14,包括 32 位和 64 位安装。
【解决方案5】:

只需使用ActivePerl - 你可以下载 5.14 或 5.12,它和 Strawberry 一样好,即使现在有完整的 CPAN 工具链。唯一的限制因素是许可证,它完全免费使用,但如果没有获得 OEM 许可证,您不能将其捆绑到您的任何应用程序中。所以对于 99% 的情况,这是一个很好的分布。

StrawberryPerl 也是合适的,但它们通常在 Perl 版本发布和更新的 StrawberryPerl 版本可用之间有稍长的延迟。

【讨论】:

    【解决方案6】:

    我有一个完全更新的 Ubuntu 11.04;它有 Perl 5.10.1。我不知道其他 Linux 发行版的最新情况。 Cygwin 也有 5.10.1。

    您总是可以从源代码构建。

    【讨论】:

    • 我的 Fedora 15 自带 5.12.4。
    • 从源代码构建确实不如获得编译版本好。当然,这是可能的,但是你需要安装一个编译器,这需要很多时间,如果你想使用 DBD::mysql ,你也需要那些头文件。这很乏味,尤其是如果您的目标是写“说“Hello World”;”。
    • @MichielB:当然可以,但如果最新版本无法为您的平台预编译,它可能是唯一的选择。
    • 在 Windows 上,它以预编译的形式提供,您绝对应该使用它。在 Linux 系统上,编译不像在 windows 上那么繁琐,App::perlbrew 是一个非常好的帮手。
    【解决方案7】:

    好吧,您可以使用 Active Perl,也可以使用 GNU/Linux 发行版并从其存储库中获取最新的 Perl。 GNU/Linux 不是 Windows,它是开源的,您可以在任意数量的 PC 上安装它。你可以试试 Ubuntu,或者它为易于使用的系统构建。

    【讨论】:

      【解决方案8】:

      学习 Perl 中的大部分内容不依赖于 Perl 5.14 的特性,并且这些特性都有明确的标记。在大多数情况下,我尝试展示一种非 v5.14 的方式来做同样的事情。您会错过一些不错的 v5.14 功能,但没有它们您不会被困住。而且,值得一提的是,即将推出的新 Programming Perl 涵盖了 v5.16。如果您还没有旧版本,请不要购买。

      很多人已经为各种 Perls 提出了非常好的选择,所以我不会重复这些。我对学生的建议始终是学习您要部署到的 Perl 版本和操作系统。

      您不必拘泥于 Windows。您可以获得几乎任何您喜欢的操作系统的虚拟机。 VMWareOracle VirtualBox 有免费播放器,很多地方提供预配置的虚拟机。从那里,您可以安装任何您喜欢的 Perl 版本。拥有多启动系统也非常便宜和容易(尽管 VM 不会阻止您同时使用这两种系统)。

      在 Windows 上,您也可以安装 cygwin,然后安装您喜欢的任何 Perl。

      另外,还有一个preview release for Strawberry Perl 5.14

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-03-10
        • 1970-01-01
        • 2013-05-21
        • 2015-05-01
        • 2011-11-10
        • 2021-05-21
        • 2014-11-18
        • 2020-04-07
        相关资源
        最近更新 更多