如何解决Apple虚拟化Ubuntu 22.04中的‘Exec format error’问题?
解决Intel HPC Kit(含Fortran)安装时Exec格式错误及文件被移除的问题
问题分析
你遇到的Exec format error是核心问题,这通常意味着二进制程序与系统CPU架构不匹配,安装脚本在检测到执行失败后自动删除了解压文件,导致无法继续排查。结合你在Apple虚拟化环境中运行Ubuntu 22.04的场景,大概率是架构兼容问题。
排查与解决步骤
1. 确认系统与安装包的架构匹配
检查Ubuntu系统架构,执行命令:
uname -m如果输出是
aarch64(ARM架构),注意Intel Fortran(包含在HPC Kit中)目前无官方ARM支持版本,可改用GCC的gfortran替代,执行sudo apt install gfortran即可安装。
如果输出是x86_64,继续下一步。验证安装包架构:
查看解压后bootstrapper的文件信息:file /home/tanyang/1_HPCKit_P_2023.2.0.49440_offline/bootstrapper确认输出包含
x86-64,若显示其他架构,说明下载了错误版本,需重新下载对应x86_64的离线包。
2. 修复Apple虚拟化环境的x86_64转译支持
在Apple Silicon芯片上运行x86_64 Ubuntu,需确保转译功能正常:
- macOS端:打开「系统设置」→「通用」→「VPN与设备管理」→「虚拟化框架」,确认相关选项已开启。
- Ubuntu系统内安装转译组件:
安装完成后重新运行安装脚本。sudo apt update && sudo apt install binfmt-support qemu-user-static
3. 阻止安装脚本自动删除文件
为方便后续排查,修改install.sh注释掉自动删除逻辑:
- 找到脚本中包含
Remove extracted files的错误处理代码段。 - 在删除文件的命令(如
rm -rf ...)前添加#注释掉。 - 保存修改后重新运行
./install.sh,出错后解压文件会保留,便于进一步排查。
4. 手动执行bootstrapper获取详细错误
直接运行bootstrapper程序,获取更具体的错误信息:
cd /home/tanyang/1_HPCKit_P_2023.2.0.49440_offline ./bootstrapper
根据输出细节针对性处理。
内容的提问来源于stack exchange,提问作者Ian
相关产品推荐
相关产品推荐

