或多或少全新安装的 SciLinux 6:
[CODE] $ cat /etc/redhat-release Scientific Linux 版本 6.0 (Carbon) $ uname -an Linux bigbox.em.local 2.6.32-131.6.1.el6.x86_64 #1 SMP Tue Jul 12 17:14:50 CDT 2011 x86_64 x86_64 x86_64 GNU/Linux [/CODE]
我正在尝试安装一个名为 ClusterSSH 的小包:
http://sourceforge.net/apps/mediawiki/clusterssh/index.php?title=Main_Page
http://search.cpan.org/~duncs/App-ClusterSSH-4.00_06/bin/ctel
显然 EL6 yum 一直想安装来自 EL5.5 的 perl 模块,因此,从:
必须做一些与我习惯做的不同的事情,即:
# yum install 'perl(something::something)'
因此,问题是这样的:
# perl Build.PL
Checking whether your kit is complete...
Looks good
Checking prerequisites...
- ERROR: Test::Trap is not installed
- ERROR: Tk is not installed
ERRORS/WARNINGS FOUND IN PREREQUISITES. You may wish to install the versions
在继续此安装之前,请先安装上述模块
Deleting Build
Removed previous script 'Build'
Creating new 'Build' script for 'App-ClusterSSH' version '4.00_11'
# sudo yum install 'perl(Test::Trap)'
Loaded plugins: refresh-packagekit
Setting up Install Process
No package perl(Test::Trap) available.
Error: Nothing to do
# rpm -qa |grep Tk
perl-Tk-804.029-1.el5.rf.x86_64
注意 el5 后缀...grrr
# sudo yum install 'perl(Tk)'
Loaded plugins: refresh-packagekit
Setting up Install Process
No package perl(Tk) available.
Error: Nothing to do
# sudo yum install 'perl(perl::Tk)'
Loaded plugins: refresh-packagekit
Setting up Install Process
No package perl(perl::Tk) available.
Error: Nothing to do
# sudo yum install 'perl(Perl::Tk)'
Loaded plugins: refresh-packagekit
Setting up Install Process
No package perl(Perl::Tk) available.
Error: Nothing to do
那么我现在该做什么?
提前致谢!
答案1
从 的输出来看rpm -qa | grep Tk
,perl-Tk
已安装在您的系统上。您可以Test::Trap
使用 CPAN 方法安装模块:
perl -MCPAN -e shell
install Test::Trap
或者下载源代码并手动安装:
wget http://search.cpan.org/CPAN/authors/id/E/EB/EBHANSSEN/Test-Trap-v0.2.1.tar.gz
tar zxvf Test-Trap-v0.2.1.tar.gz
cd Test-Trap-v0.2.1
perl Makefile.PL
make
make install
答案2
显然,您的 Scientific Linux 系统上的软件包设置确实存在问题。我有一台 6.1 机器,它“按预期”运行。
您的 RPM 输出将软件包标记为已安装,但它来自 el5,代表 perl 5.8.x,因此您的系统 perl(5.10.x)找不到它。
显然您的存储库中没有打包的 Tk 模块。您可以通过添加更多存储库(EPEL 或 RPMForge)来解决这个问题,希望它们有您需要的模块,或者从 CPAN 安装所有内容。要编译 perl Tk 模块,您需要 tk-devel 库(或类似的东西)。您应该能够通过 yum 找到它们。
如果你从 CPAN 安装模块通常只需运行
cpan Test::Trap
cpan Tk
请注意,cpanminus 是目前非常流行的替代(更干净) cpan 客户端。也可以设置它。