Windows10子系统Ubuntu中Perl模块安装失败:gzip执行格式错误
在Windows 10 WSL Ubuntu中安装Perl模块HTTP::Tiny的解决方案
问题重现
执行cpan HTTP::Tiny时出现以下错误:
$ cpan HTTP::Tiny Loading internal logger. Log::Log4perl recommended for better logging Reading '/home/user/.cpan/Metadata' Database was generated on Sun, 06 Nov 2022 23:29:01 GMT Running install for module 'HTTP::Tiny' Fetching with HTTP::Tiny: http://www.cpan.org/authors/id/D/DA/DAGOLDEN/HTTP-Tiny-0.082.tar.gz Fetching with HTTP::Tiny: http://www.cpan.org/authors/id/D/DA/DAGOLDEN/CHECKSUMS Checksum for /home/user/.cpan/sources/authors/id/D/DA/DAGOLDEN/HTTP-Tiny-0.082.tar.gz ok sh: 1: /usr/bin/gzip: Exec format error /usr/bin/tar: This does not look like a tar archive /usr/bin/tar: Exiting with failure status due to previous errors Uncompressed /home/user/.cpan/sources/authors/id/D/DA/DAGOLDEN/HTTP-Tiny-0.082.tar.gz successfully Using Tar:/usr/bin/tar xf "HTTP-Tiny-0.082.tar": Untarred HTTP-Tiny-0.082.tar successfully 'YAML' not installed, will not store persistent state Package contains both files[HTTP-Tiny-0.082.tar] and directories[HTTP-Tiny-0.082]; not recognized as a perl package, giving up Configuring D/DA/DAGOLDEN/HTTP-Tiny-0.082.tar.gz with Makefile.PL Running make for D/DA/DAGOLDEN/HTTP-Tiny-0.082.tar.gz make: *** No targets specified and no makefile found. Stop. DAGOLDEN/HTTP-Tiny-0.082.tar.gz /usr/bin/make -- NOT OK
解决步骤
1. 修复损坏的gzip工具
错误日志中/usr/bin/gzip: Exec format error是核心问题,说明gzip工具损坏或不兼容:
- 验证gzip状态:运行
gzip --version,若报错则确认工具异常 - 重新安装gzip:
sudo apt update && sudo apt install --reinstall gzip
2. 清理CPAN缓存并重新安装
缓存的损坏压缩包会导致重复错误,先清理再重试:
- 删除缓存文件:
rm -rf /home/user/.cpan/sources/authors/id/D/DA/DAGOLDEN/HTTP-Tiny-0.082* - 重新执行CPAN安装:
cpan HTTP::Tiny
3. 手动安装(若上述方法失效)
如果自动安装仍有问题,手动完成解压和安装流程:
- 下载模块包:
wget http://www.cpan.org/authors/id/D/DA/DAGOLDEN/HTTP-Tiny-0.082.tar.gz - 正确解压:
tar xzf HTTP-Tiny-0.082.tar.gz - 进入模块目录并安装:
cd HTTP-Tiny-0.082 perl Makefile.PL make && make test && sudo make install
4. 可选:安装YAML模块
日志提示'YAML' not installed,安装后可解决CPAN状态存储问题:
cpan YAML
内容的提问来源于stack exchange,提问作者Matt Williams
相关产品推荐
相关产品推荐

