问题遇到的现象和发生背景
ubuntu虚拟机中riscv编译环境搭建
虚拟机版本:ubuntu22.04 jammy
riscv-gnu-toolchain从windows下的GitHub Desktop中下载并传输到虚拟机中
./configure --prefix=/opt/riscv --enable-multilib
遇到问题
bash: ./configure: /bin/sh^M: bad interpreter: No such file or directory
已经解决通过以下方式
vim configure
:set ff=unix
但是在make 阶段仍然报错,报错内容如下:
make: /opt/github/riscv-gnu-toolchain/scripts/march-to-cpu-opt: No such file or directory
mkdir -p /opt/riscv/.test || \
(echo "Sorry, you don't have permission to write to" \
"'/opt/riscv'. Please make sure that the location is " \
"writable or use --prefix to specify another destination.'" \
&& exit 1)
rm -r /opt/riscv/.test
mkdir -p stamps/ && touch stamps/check-write-permission
rm -rf stamps/build-binutils-linux build-binutils-linux
mkdir build-binutils-linux
cd build-binutils-linux && CC_FOR_TARGET=riscv64-unknown-linux-gnu-gcc /opt/github/riscv-gnu-toolchain/binutils/configure \
--target=riscv64-unknown-linux-gnu \
\
--prefix=/opt/riscv \
--with-sysroot=/opt/riscv/sysroot \
--enable-multilib \
\
--disable-werror \
--disable-nls \
--with-expat=yes \
--disable-gdb \
--disable-sim \
--disable-libdecnumber \
--disable-readline \
--with-isa-spec=2.2
/bin/sh: 1: /opt/github/riscv-gnu-toolchain/binutils/configure: not found
make: *** [Makefile:285: stamps/build-binutils-linux] Error 127
想知道,应该更改哪些内容可以正常编译工具链。
是否都是因为所有文件中的configure都需要set ff=unix