在 Cygwin 中安装 Perl 包 Term::ReadKey 时出错

在 Cygwin 中安装 Perl 包 Term::ReadKey 时出错

我正在尝试通过 cygwin 使用 git

好吧,我使用这个命令将 svn 内容克隆到本地 git 存储库:

git svn clone svn://path/to/my/project --username myuser

Git 返回:

Authentication realm: <svn://path/to/my/project>
Password for 'myuser': Can't locate Term/ReadKey.pm in @INC (@INC contains: /usr/lib/perl
/site_perl/5.14 /usr/lib/perl5/site_perl/5.14/x86_64-cygwin-threads /usr/lib/perl5/vendor_perl
/5.14/x86_64-cygwin-threads /usr/lib/perl5/vendor_perl/5.14 /usr/lib/perl5/5.14/x86_64-cygwin-   
threads /usr/lib/perl5/5.14 .) at /usr/lib/perl5/vendor_perl/5.14/Git.pm line 565.

Google 说我应该使用 perl shell,我就是这么做的:

perl -MCPAN -e shell

在 shell 启动之后,我应该安装 Perl Term ReadKey 包:

install Term::ReadKey

现在我的问题出现了,Term::ReadKey 包的安装失败,并出现以下错误消息:

gcc -c   -DPERL_USE_SAFE_PUTENV -U__STRICT_ANSI__ -fno-strict-aliasing -pipe -fstack-protector 
-DUSEIMPORTLIB -O3   -DVERSION=\"2.32\" -DXS_VERSION=\"2.32\"  "-I/usr/lib/perl5/5.14/x86_64-  
cygwin-threads/CORE"   ReadKey.c
ReadKey.xs:3:20: fatal error: EXTERN.h: No such file or directory
#include "EXTERN.h"
                 ^
compilation terminated.
Makefile:327: recipe for target 'ReadKey.o' failed
make: *** [ReadKey.o] Error 1
JSTOWE/TermReadKey-2.32.tar.gz
/usr/bin/make -- NOT OK
Running make test
Can't test without successful make
Running make install
Make had returned bad status, install seems impossible
Failed during this command:
JSTOWE/TermReadKey-2.32.tar.gz               : make NO

谷歌找到了这个问题,它与我的问题相关:gcc 没有找到头文件,尽管它的路径已经包含在 -I 中 但正确标记的答案没有帮助。我已经在 cygwin 中安装了所有 crypt 库,cygwin-GCC 和 Make 都是从一开始就安装的,但它仍然不起作用。

如果有人能帮助我,那就太好了,谢谢。

编辑:

find / -iname "*EXTERN.h*"

返回

/lib/perl5/5.14/x86_64-cygwin-threads/CORE/EXTERN.h
/usr/lib/perl5/5.14/x86_64-cygwin-threads/CORE/EXTERN.h

答案1

所以解决方案是.....从 cygwin 安装程序安装 TermReadKey Cygwin 包。这是一个非常简单的解决方案 :)

感谢 atrigent 提出这个想法!

相关内容