perlbrew能在cygwin上运行吗?

7

经过搜索,我几乎找不到perlbrew在cygwin上的工作证据。我当前遇到的问题是:

使用最新的从网站安装的perlbrew(而不是CPAN),尝试在最新的cygwin安装(包括perl 5.14.2)中安装perl-5.14.2。在build.log打印../dist/threads-shared/t/shared_attr.t...ok之后就会停顿。这是在WinXP Pro 2002 SP3上进行的。以前在其他版本的cygwin上(包括perl 5.10.1)尝试使用perlbrew也失败了,但是出现在其他地方。

我已在blogs.perl.org上的Reini Urban的博客和github上的App-perlbrew发布了评论和问题/错误报告,但还没有得到回应。

是否有希望让perl在cygwin上构建?如果不能,我该怎么办才能解决问题并仍然使用perlbrew(使我的cygwin环境像我的linux环境一样使用perlbrew来统一环境)?


几年后,它对我来说运行良好。然而,一些CPAN模块测试失败,所以我必须使用cpanm --force安装它们。 - cxw
3个回答

2

perlbrew 能够在 Cygwin 上正常工作,并且可以构建 perl,但是有些单元测试会一直挂起(就像您发现的那样)。在构建过程中请注意输出内容,并使用 pskill 命令杀掉一些无法运行几分钟的测试,通常与线程相关。即使只有少数测试未通过,perlbrew 应该(祈祷)能够运行 make install 命令。


实际上,我尝试使用kill和kill -9命令来终止挂起的进程,但是两者都没有成功。最终,我不得不杀掉父进程,这导致整个构建过程停止。我可以再次尝试,并且我不知道为什么杀死进程没有起作用。我也可以使用Process Explorer来尝试终止进程,而不是使用本地(Cygwin)kill.exe。 - jrw32982
已经解决了最初的错误,但是构建失败了(太多测试未通过)。也许Reini在为Cygwin分发二进制Perl时仍然打包了失败的构建? - jrw32982

1

我从未在cygwin下运行过perlbrew。但是作为一种解决方法,也许可以尝试plenv。当我上次尝试时,在cygwin下它可以直接使用。


0

2018年的更新 - perlbrew在Cygwin上运行良好。但是,perlbrew安装的perl将不像系统Perl那样有补丁。我在https://github.com/cxw42/perlbrew-on-cygwin上有一个示例存储库,展示了如何构建最新的Cygwin系统perl并将其安装为perlbrew perl。

简而言之,使用前缀、站点前缀和供应商前缀设置为~/perl5/perlbrew/perls/perl-<version>构建Perl会生成一个Perl树。你可以把这个Perl树放到~/perl5/perlbrew/perls/中,perlbrew会将其作为可用的Perl选项。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接