编译的时候可能会出现
recipe for target '...' failed
意思是目标’…'缺少配方,也就是缺少依赖。
我在二次编译riscv-gnu-tools的时候就出现了recipe for target ‘configure-gcc’ failed,第一次编译没毛病。
我的解决办法
#首先是--prefex选择与之前不同的路径,
#然后由于默认编译64位交叉编译器,因此把后缀删掉,严格按照github上readme的命令就没有报错了
./configure --prefix=/opt/riscv64
sudo make -j2
可能的原因很多:
一、可能是必要的一些依赖软件没有装好,
sudo apt-get install autoconf automake autotools-dev curl python3 libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat-dev
二、如交叉编译器的版本与生成的makefile不一致。
解决办法
查看makefile重新生成一致的版本,如最上面的解决办法所示;
使用下面这个命令编译也没问题
./configure --prefix=/opt/riscv32 --with-arch=rv32gc --with-abi=ilp32d
sodu make
出现下面这个且没有error就是成功
三、也有可能是权限不够。(这个会提示)
解决办法
使用sudo make