我想要在cygwin上运行的Perl脚本需要Digest::SHA1。但是,我必须使用CPAN来配置它。在我运行cpan[1]> install Digest::SHA1之前,一切看起来都很好。事情还在继续,然后我就会犯以下错误:
/bin/sh: gcc-4:找不到命令 Makefile:327:目标‘SHA1.o’的配方失败 制造:* SHA1.o错误127 GAAS/Digest-SHA1-2.13.tar.gz /usr/bin/make --不太好 “‘YAML”未安装,将不存储持久状态 运行制造试验 没有成功的测试就不能运行make 使已返回不良状态,安装似乎是不可能的 在此命令期间失败: GAAS/Digest-SHA1-2.13.tar.gz : NO
看来我必须安装gcc4。犯错误并不是因为它的路径设置正确( CPAN中的o conf make返回/usr/bin/make,我已经安装了make的二进制文件)。不幸的是,cygwin没有提供gcc4包(它被标记为一个过时的包)。有什么解决办法来解决这个问题吗?或者有一种方法可以在cygwin下编译gcc4,因为在Makefile中简单地将gcc-4编译到gcc是行不通的。
发布于 2013-08-22 13:04:58
通常,您必须对XS使用与编译Perl相同的编译器。你可以试着强迫你拥有的人,看看会发生什么:
cpan> look Digest::SHA1
Digest-SHA1-2.13$ perl Makefile.PL CC=/usr/bin/gcc LD=/usr/bin/gcc
Digest-SHA1-2.13$ make ; make test ; make install发布于 2014-09-04 09:04:18
添加perl Makefile.PL CC=/usr/bin/gcc对我不起作用,因为Makefile还包含一个普通的非别名gcc-4 (模板工具包的Makefile)。
我只使用cp /usr/bin/gcc /usr/bin/gcc-4。
也许ln也能起作用。
https://stackoverflow.com/questions/18379765
复制相似问题