前情提要:下载好ISA-L,然后执行如下步骤
sudo apt install autoconf libtool
# 在ISA-L工程目录下
sudo ./autogen.sh
sudo ./configure
sudo make
在sudo make这一步出错,部分错误日志如下:
mem/mem_zero_detect_avx2.s:70: error: unknown preprocessor directive `%use'
mem/mem_zero_detect_avx2.s:70: error: label or instruction expected at start of line
mem/mem_zero_detect_avx2.s:70: error: instruction expected after label
/usr/bin/ld: cannot find mem/.libs/mem_zero_detect_avx2.o: No such file or directory
mv: cannot stat 'mem/.libs/mem_zero_detect_avx2.o.tmp': No such file or directory
make[1]: *** [Makefile:3504: mem/mem_zero_detect_avx2.lo] Error 1
原因很简单,但是我想不到,知道看到官方的READ.me。
x86_64:
* Assembler: nasm. Version 2.15 or later suggested (other versions of nasm and
yasm may build but with limited function [support.](doc/build.md)
* Compiler: gcc, clang, icc or VC compiler.
之前有一步说缺少yasm或者nasm插件,我安装的是yasm插件,所以可能是这个原因。
所以卸载掉yasm,安装nasm.
重头开始autogen。就make成功了,别忘了make install。
sudo apt remove yasm
sudo apt install nasm
sudo ./autogen.sh
sudo ./configure
sudo make
sudo make install
希望对你有帮助!点个赞吧