TaiShan服务器上编译netperf工具时提示“无法确认系统架构类型”的解决方法
问题现象描述
下载netperf源码,直接在TaiShan服务器的Linux系统上执行configure命令会出现“无法确认系统架构类型”的报错。
关键过程、根本原因分析
究其原因,在netperf源码文件的config.guess文件中会猜测系统的架构,而该文件中通过uname -m命令获取系统架构名称,在TaiShan服务器中,该命令会返回aarch64,而在config.guess文件中列出的架构中,却没有该架构,只有ARM架构。
结论、解决方案及效果
解决方案1:
手动修改config.guess文件,将uname -m命令直接改为arm即可。
原文件内容如下:
修改为:
解决方案2:
新增加arm64v8类型,configure时候指定类型。
- 修改配置文件“config.sub”。
vi config.sub
- 查找“x86”内容的位置,在其位置后面增加“aarch64”类型。
在“case $basic_machine in”区域的两个位置修改。
原内容1:
| x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
修改后为:
| x86 | aarch64 | xscale | xscalee[bl] | xstormy16 | xtensa \
原内容2:
| x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
修改后为:
| x86-* | aarch64-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
- 指定host和build为aarch64,配置netperf生成Makefile。
./configure --host=aarch64 --build=aarch64