You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS7 Perl v5.34环境安装DBD-SQLite 1.70提示DBI版本错误问题问询

解决方案

  • 排查sudo环境变量问题
    如果你是通过perlbrew、plenv或手动编译方式安装的Perl 5.34,安装模块时不要加sudo执行cpanm。sudo会默认重置PATH环境变量,调用CentOS7系统自带的旧版Perl,导致模块路径读取混乱,明明在自定义Perl环境下安装了高版本DBI,安装脚本却读到系统路径的旧版本DBI。直接执行cpanm DBD::SQLite重试即可。

  • 手动指定DBI路径源码安装
    如果上述方法无效,可手动指定DBI路径编译安装:

  1. 下载DBD-SQLite 1.70源码并解压,进入源码目录
  2. 执行以下命令获取DBI的安装路径:
perldoc -l DBI

输出示例为/opt/perl5.34/lib/site_perl/5.34.0/x86_64-linux/DBI.pm,对应的DBI头文件路径为该路径去掉末尾的DBI.pm后加上auto/DBI,即/opt/perl5.34/lib/site_perl/5.34.0/x86_64-linux/auto/DBI
3. 执行Makefile生成命令,替换为你自己的DBI路径:

perl Makefile.PL DBI_INCLUDE=/opt/perl5.34/lib/site_perl/5.34.0/x86_64-linux/auto/DBI
  1. 执行编译安装:
make && make test && make install
  • 调整PERL5LIB优先级
    如果安装脚本还是读取到系统旧版DBI,执行以下命令将自定义Perl的模块路径设为最高优先级后,再重新执行安装步骤:
export PERL5LIB=$(perl -e 'print join(":",@INC)')

如果要永久生效,可将上述命令写入你的shell配置文件(/.bashrc、/.zshrc等)。

内容的提问来源于stack exchange,提问作者Frank

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 07:51:03