问题标签 [perlbrew]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - 如何安装多个 Perl 版本而不会绊倒彼此的 XS 模块?
我想在我的主目录中安装几个不同版本的 perl。我尝试使用App::perlbrew
,但一个版本的 XS 模块在另一个版本中导致了段错误。有没有办法安装多个版本的 perl 并让它们自动将它们的 XS 模块分开?
perl - 为 OS X 构建 Perl - 特定于体系结构的编译选项
感谢Chas的建议。Owens,我一直在玩Perlbrew,在我的主目录中拥有各种 Perl 版本。然而,我的问题更普遍地是关于在 OS X 下构建更新的 Perl。
我在最近的 MacBook Pro 上运行 OS X 10.6.4 Snow Leopard。在Snow Leopard 下正确设置 gcc 后,我使用默认选项在我的主目录中构建并运行 Perl 5.12.1。它通过了 Perl 测试工具。
Perlbrew 允许使用操作系统和平台特定的标志来构建 Perl。这些是-D -U -A
Perl 配置脚本的选项。perlmacosx读我的文件已经 4 年没有更新了,所以这已经不是很有帮助了。
我很想模仿系统 Perl v 5.10.0 中使用的 Apple 开关(在大多数情况下,您可以通过键入[path_to_specific_perl]/perl -V
或系统查看特定 Perl的开关......)新 Perl 构建的根目录,我应该使用什么?/usr/bin/perl
-Dprefix=/usr
(目瞪口呆)以下是苹果编译选项和默认的主要区别:
另一个区别是 Apple Perl libperl 是一个 dynaloader,默认构建是静态链接的。
所以,问题:
- 我应该使用哪些
-D -U -A
开关在 OS X 10.6+ 上构建 Perl 的本地副本?我不认为我需要像 Apple 版本那样的胖二进制文件,而且我不知道我是否应该做一个 dynaloader 版本。主要是我在寻找用于优化的建议开关和生成的 libperl 的建议特性。 - 我应该做一个dynaloader版本吗?(即,在 OS X 意义上的动态库......)
- Perl 是系统
/usr/bin/perl
,我不想改变它。我是否将脚本中的 sheebang 更改为指向 Perlbrew 版本的 Perl?这意味着我的 sheebang 将是 `/Users/andrew/perl5/perl。我改变我的路径指向那里吗?其他人在这方面在做什么?什么被认为是“最佳实践”? - 当我运行 Perlbrew 时,我
v-string in use/require non-portable at ./perlbrew line 818.
在 Perlbrew 中收到警告 Line 818 isuse 5.8.0;
Shouldn't that line beuse 5.008_000
?
编辑
感谢 Jonathan Leffler,我至少有一些 Perls 可以看。在大多数情况下,我只是采用默认值,添加线程,而不是深入研究它,它似乎工作正常。现在我已经安装了几个 Perl 的 Perlbrew,并且我在 5.10 离开了系统 Perl。我/usr/bin/env perl
在 sheebang 上使用具有面向未来的代码。
perl - 如何使用 perlbrew 在我家安装 Perl 版本?
我已经安装了perlbrew这似乎是一个很好的解决方案,但是在实际尝试安装某些 Perl 版本时出现了一些毫无意义的错误:
perl - 如何在使用 perlbrew 时安装 CPAN 模块?
我已经开始使用perlbrew
并安装了 perl-5.12.2。
我知道我需要重新安装我的 CPAN 模块,所以我切换到我的新 Perl 版本(perlbrew switch perl-5.12.2
和hash -r
),验证切换成功(perl -v
)然后尝试安装一些模块(File::Copy::Recursive
使用cpan
。但是,cpan
说 `File::Copy::Recursive是最新的 (0.38)。
当我使用这个模块启动一个 Perl 脚本时,它会喊叫Can't locate File/Copy/Recursive.pm in @INC ...
(显示许多perl-5.12.2
位置)。当我切换回我的“正常” Perl ( perlbrew off
) 时,脚本运行良好。
有什么建议么?也许 CPAN 不能很好地工作perlbrew
?
perl - 使用 perlbrew 时如何安装最新的 BioPerl 版本?
我正在使用perlbrew
并且我想安装最新的 bioperl 版本。我应该使用cpanm
orgit
吗?
如果git
- 我只是像往常一样安装(AKAgit clone ...
然后制作和构建),还是我应该做一些特别的事情?
更新
具体来说,我不确定我是否了解BioPerl Using Git 手册中的以下专家:
告诉 perl 在哪里可以找到 BioPerl(假设您检查了 $HOME/src 中的代码;在 .bash_profile、.profile 或 .cshrc 中设置它):
为什么这是必要的?
更新 2
简单地导出 bioperl 克隆目录不会影响所有bp_***.pl
脚本(通常在/usr/bin/
正常Build
安装后找到)。
在使用 切换到正确的 perl 版本后,我还尝试从克隆的目录构建perlbrerw
,但随后它运行 cpan shell 来安装一些似乎不能很好地使用的依赖项perlbrew
(而不是cpanm
)。
所以,我的问题仍然...
谢谢!
eclipse - 如何使 Eclipse 与“perlbrew”一起工作?
我perlbrew
用来在 perl 版本之间切换。我还使用 Eclipse 编写 perl 脚本。
似乎 Eclipse 无法识别 perl 版本之间的切换,并继续使用安装在perlbrew
. 我尝试重新启动 Eclipse,但这没有帮助。
那么,我怎样才能让 Eclipse 工作perlbrew
呢?
perl - 如何完全卸载 perlbrew?
我很喜欢它,但我怀疑它会引起一些问题。我知道我可以使用perlbrew off
,但我想完全删除它。我怎么做?
perl - 为什么安装 perl-5.12.2 时 perlbrew 会失败?
当我尝试使用 perlbrew 安装 Perl 5.12.2 时,最后我收到一个错误,因为 CPANPLUS 测试失败。
完整的日志文件可以在 scribd 找到
perl - 为什么 `cpanm` 安装的模块不能被识别?
我使用以下命令安装了 perl-5.12.2 perlbrew
:
然后我切换到这个版本并IPC::System::Simple
使用cpanm
.
但是,当我尝试运行我的脚本时,我得到:
我还找到了以下目录:
~/perl5/lib/perl5/x86_64-linux-thread-multi/auto/IPC/System/Simple
但它是空的(我不知道这是否意味着什么)。
perl - 如何控制提交网格作业时使用的 Perl 版本?
我正在使用 SGE(Sun Grid Engine)将作业提交到网格。我也perlbrew
用来管理我安装的 Perl 版本。我编写了一些简短sh
的脚本,用于运行需要特定 Perl 版本 (5.12.2) 的 perl 脚本,如下所示:
现在,当我提交一个作业时,一切正常,但是当我提交许多作业时,我开始收到perlbrew
相关的错误消息,例如:
所以我猜是这/home/dave/perl5/perlbrew/bin/perlbrew switch perl-5.12.2
条线导致了问题。
我能做些什么?
如何使用 perl-5.12.2(默认为 5.8.8)使我的脚本运行?