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

极简Ubuntu 16.04 Docker镜像编译Git遇Perl模块缺失报错

解决Ubuntu 16.04极简Docker镜像中编译Git时的Perl模块缺失问题

这个Can't locate ExtUtils/MakeMaker.pm报错其实很明确——Git编译过程里需要用到Perl的ExtUtils::MakeMaker模块来构建一些Perl相关工具,但你的极简Ubuntu镜像里没预装这个模块。下面给你两种实用的解决思路,按需选择就行:

方法一:通过CPAN安装缺失的Perl模块

因为你已经有基础的Perl环境(Git编译依赖它),直接用CPAN安装就行:

  1. 运行以下命令初始化CPAN并安装模块:
    perl -MCPAN -e 'install ExtUtils::MakeMaker'
    
    第一次运行CPAN会弹出配置提示,直接选默认的自动配置选项就好,等安装完成后回到Git源码目录重新执行make就行。

方法二:通过Git的配置选项规避Perl依赖

如果你的场景里根本用不上Git的Perl相关工具(比如git-send-email这类),完全可以在编译时跳过这部分,效率更高:

  1. 先清理之前可能生成的编译文件(如果已经跑过configure或make):
    make distclean
    
  2. 执行configure时禁用Perl支持:
    ./configure --without-perl
    
  3. 再正常执行make就不会再报这个错了。

要是你手动把ExtUtils::MakeMaker装到了自定义路径,还可以通过设置环境变量让Perl找到它:

export PERL5LIB=/你的自定义模块路径/lib/perl5:$PERL5LIB
./configure
make

在Docker极简镜像里,我更推荐用--without-perl的方式,既能快速解决问题,还能让最终的镜像体积更小。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 09:37:11