安装SDL时出现jpegsrc.v8b.tar.gz校验和失败错误,该如何解决?
安装Alien::SDL出现jpeg源码包校验和错误的解决方案
错误原因
Alien::SDL 1.446版本预配置的jpegsrc.v8b.tar.gz校验值,与当前IJG官方服务器提供的该版本源码包校验值不一致,导致构建校验环节失败。
解决方案
方案一(推荐):优先使用系统预安装的SDL依赖库
Alien::SDL会优先检测系统中已安装的SDL相关库,存在可用版本时不会触发源码下载编译流程,从根源避免校验错误。
- Debian/Ubuntu 系列操作系统先执行依赖安装命令:
sudo apt install libsdl1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev libsdl-gfx1.2-dev libjpeg-dev libpng-dev libtiff-dev libfreetype6-dev libogg-dev libvorbis-dev
依赖安装完成后,再执行Alien::SDL安装命令即可:
cpanm Alien::SDL
- CentOS/RHEL 系列操作系统先执行依赖安装命令:
sudo yum install SDL-devel SDL_image-devel SDL_mixer-devel SDL_ttf-devel SDL_gfx-devel libjpeg-turbo-devel libpng-devel libtiff-devel freetype-devel libogg-devel libvorbis-devel
依赖安装完成后,同样执行cpanm Alien::SDL即可完成安装。
方案二:临时跳过校验强制安装
确认下载的源码包来源为官方站点无安全风险时,可以直接跳过校验环节强制安装:
cpanm --force Alien::SDL
注意:该方案会跳过所有校验检查,仅建议在明确下载源可信的场景下使用。
方案三:手动修改校验值从源码编译
如果需要强制从源码编译安装,可以手动修改配置文件中的校验值后构建:
- 下载Alien::SDL 1.446源码包并解压
- 进入源码目录,打开
inc/My/Builder.pm文件,找到jpegsrc.v8b对应的预期校验值,将其替换为日志中给出的实际校验值033998fb47d66e1a5e16a51243424be7a172296b - 执行手动构建安装命令:
perl Build.PL ./Build ./Build install
内容的提问来源于stack exchange,提问作者Eugen Konkov
相关产品推荐
相关产品推荐

