我正在为内部软件构建 rpm 包。它包含二进制文件和 perl 脚本/模块。在构建过程中,rpmbuild 会自动扫描 perl 代码并构建依赖 perl 模块,包括 DBD:mysql。当我尝试安装软件包时,rpm 失败并出现无法找到 DBD::mysql 的错误。DBD::mysql 已安装在系统上。
# rpm -ivh conserver-admin-8.1.18-.el5.CME_1.0.x86_64.rpm
error: Failed dependencies:
perl(DBD::mysql) is needed by conserver-admin-8.1.18-.el5.CME_1.0.x86_64
# rpm -qp --requires conserver-admin-8.1.18-.el5.CME_1.0.x86_64.rpm
/bin/ksh
/bin/sh
/usr/bin/perl
perl(CMEconserver)
perl(DBD::mysql)
perl(DBI)
perl(Data::Dumper)
perl(Exporter)
perl(FindBin)
perl(Getopt::Std)
perl(POSIX)
perl(Socket)
perl(lib)
perl(strict)
perl(warnings)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1`
perl 模块安装在系统上
# perl -e 'use DBD::mysql;'
#
依赖列表中的所有 perl 模块都安装在系统上,我可以毫无问题地运行脚本。
我究竟做错了什么?