完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
按书本《手把手教你设计CPU——RISC-V处理器》19.3节使用SIRV-E-SDK实例程序,在编译demo_gpio时显示如下错误:
具体打印内容如下: qin@qin-virtual-machine:~/prj/mcu/e200_opensource-master/sirv-e-sdk$ make software PROGRAM=demo_gpio BOARD=sirv-e203-arty make -C software/demo_gpio BSP_BASE=/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp BOARD=sirv-e203-arty clean make[1]: 进入目录“/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/software/demo_gpio” rm -f demo_gpio /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/start.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/entry.o demo_gpio.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/plic/plic_driver.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty/init.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv_printf.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/stdlib/malloc.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/open.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/lseek.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/read.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/write.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/fstat.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/stat.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/close.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/link.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/unlink.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/execve.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/fork.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/getpid.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/kill.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/wait.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/isatty.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/times.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/sbrk.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/_exit.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/misc/write_hex.o make[1]: 离开目录“/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/software/demo_gpio” make -C software/demo_gpio CC=/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc RISCV_ARCH=rv32imac RISCV_ABI=ilp32 AR=/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-ar BSP_BASE=/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp BOARD=sirv-e203-arty make[1]: 进入目录“/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/software/demo_gpio” /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/start.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/start.S /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/entry.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/entry.S /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o demo_gpio.o demo_gpio.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/plic/plic_driver.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/plic/plic_driver.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty/init.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty/init.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv_printf.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv_printf.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/stdlib/malloc.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/stdlib/malloc.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/open.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/open.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/lseek.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/lseek.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/read.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/read.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/write.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/write.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/fstat.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/fstat.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/stat.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/stat.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/close.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/close.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/link.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/link.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/unlink.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/unlink.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/execve.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/execve.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/fork.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/fork.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/getpid.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/getpid.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/kill.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/kill.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/wait.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/wait.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/isatty.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/isatty.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/times.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/times.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/sbrk.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/sbrk.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/_exit.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/_exit.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty -include sys/cdefs.h -c -o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/misc/write_hex.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/misc/write_hex.c /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/bin/riscv-none-embed-gcc -O2 -DUSE_PLIC -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medany -ffunction-sections -fdata-sections -fno-builtin-printf -fno-builtin-malloc -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/include -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/ -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env -I/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/start.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/entry.o demo_gpio.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/drivers/plic/plic_driver.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty/init.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv_printf.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/stdlib/malloc.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/open.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/lseek.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/read.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/write.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/fstat.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/stat.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/close.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/link.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/unlink.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/execve.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/fork.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/getpid.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/kill.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/wait.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/isatty.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/times.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/sbrk.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/sys/_exit.o /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/libwrap/misc/write_hex.o -o demo_gpio -T /home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty/link.lds -nostartfiles -Wl,--gc-sections -Wl,--wrap=scanf -Wl,--wrap=malloc -Wl,--wrap=printf -Wl,--check-sections -L/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env /home/qin/prj/mcu/gnu-mcu-eclipse/riscv-none-gcc/7.2.0-4-20180606-1631/bin/../lib/gcc/riscv-none-embed/7.2.0/../../../../riscv-none-embed/bin/ld:/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty/link.lds:1: ignoring invalid character `#' in expression /home/qin/prj/mcu/gnu-mcu-eclipse/riscv-none-gcc/7.2.0-4-20180606-1631/bin/../lib/gcc/riscv-none-embed/7.2.0/../../../../riscv-none-embed/bin/ld:/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/sirv-e203-arty/link.lds:1: syntax error collect2: error: ld returned 1 exit status make[1]: *** [/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/bsp/env/common.mk:68:demo_gpio] 错误 1 make[1]: 离开目录“/home/qin/prj/mcu/e200_opensource-master/sirv-e-sdk/software/demo_gpio” make: *** [Makefile:206:software] 错误 2 求解答是什么问题 |
|
相关推荐
1个回答
|
|
|
我们遇到了编译错误,但错误信息在提供的文本中被截断了。不过,从已有的信息中,我们可以尝试分析可能的原因和解决方法。 根据您提供的信息,您正在按照《手把手教你设计CPU——RISC-V处理器》第19.3节操作,使用SIRV-E-SDK编译demo_gpio程序,目标板为sirv-e203-arty。 在编译过程中,执行了`make software PROGRAM=demo_gpio BOARD=sirv-e203-arty`,然后进入了`software/demo_gpio`目录执行`clean`操作,然后尝试编译,但后续的编译步骤出现了错误(由于信息被截断,我们无法直接看到错误内容)。 不过,根据经验,编译SIRV-E-SDK实例程序时常见的错误可能包括: 1. **环境配置问题**:没有正确设置RISC-V工具链路径,或者工具链的版本不匹配。 2. **依赖缺失**:编译过程中可能需要一些依赖库或工具,如cmake、make、autoconf等。 3. **路径问题**:SDK的路径中包含空格或特殊字符,或者路径设置不正确。 4. **权限问题**:当前用户对某些文件或目录没有读写权限。 5. **代码或Makefile错误**:SDK本身可能存在一些bug,或者Makefile中引用了错误的路径。 由于您提供的错误信息被截断,我无法直接判断具体错误。但是,我们可以尝试以下通用解决方法: ### 步骤1:检查工具链配置 SIRV-E-SDK需要RISC-V工具链。请确保您已经按照书籍的说明安装了RISC-V工具链,并且设置了环境变量`RISCV`指向工具链的安装路径。 您可以通过以下命令检查: ```bash echo $RISCV ``` 如果未设置,您需要设置它。例如,如果您的工具链安装在`/opt/riscv`,则: ```bash export RISCV=/opt/riscv ``` ### 步骤2:检查依赖 确保您已经安装了必要的构建工具。在Ubuntu系统上,您可能需要安装以下软件包: ```bash sudo apt-get install autoconf automake autotools-dev curl libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat-dev ``` ### 步骤3:清理并重新编译 尝试清理整个项目并重新编译: ```bash make clean make software PROGRAM=demo_gpio BOARD=sirv-e203-arty ``` ### 步骤4:检查错误日志 由于您的错误信息被截断,请重新运行编译命令,并将完整的错误信息保存到文件中,以便分析。例如: ```bash make software PROGRAM=demo_gpio BOARD=sirv-e203-arty 2>&1 | tee build.log ``` 然后查看build.log文件,找到具体的错误信息。 ### 步骤5:检查SDK路径 确保您所在的SDK路径正确,并且路径中没有空格或特殊字符(最好使用全英文路径)。 ### 步骤6:权限问题 确保您有权限在项目目录中读写。可以尝试赋予当前用户权限: ```bash chmod -R u+w /home/qin/prj/mcu/e200_opensource-master ``` ### 步骤7:更新子模块 如果SDK使用了git子模块,请确保子模块已经更新: ```bash git submodule update --init --recursive ``` ### 步骤8:参考官方文档或Issues 查看SIRV-E-SDK的官方文档或GitHub仓库的Issues部分,看是否有类似的问题和解决方案。 ### 步骤9:尝试其他示例程序 尝试编译其他示例程序(如demo_hello)以确定是否是特定于demo_gpio的问题。 如果您能提供完整的错误信息,我们可以更准确地定位问题。请补充错误信息,以便进一步帮助您。 根据您提供的编译错误信息,结合SIRV-E-SDK的常见问题,以下是可能的原因和解决方案: 错误原因分析
解决方案✅ 1. 设置RISC-V工具链环境变量在终端执行以下命令(根据您的实际安装路径调整): 验证工具链是否有效: ✅ 2. 检查BSP路径有效性确认 若目录结构不符,需调整SDK路径或重新克隆仓库。 ✅ 3. 清理并重新编译执行深度清理后重新编译: ✅ 4. 修复文件权限问题授予当前用户完整权限: ✅ 5. 验证SDK完整性检查关键文件是否存在: ✅ 6. 使用兼容版本(关键步骤)书本使用的SDK可能存在版本差异: 补充建议
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
【作品合集】玄铁BPI-CanMV-K230D-Zero开发板测评
3030 浏览 0 评论
【作品合集】玄铁Banana Pi BPI-RV2开发板测评
1679 浏览 0 评论
27298 浏览 0 评论
【作品合集】矽速科技Sipeed MaixCAM Pro开发板测评
33636 浏览 0 评论
【作品合集】赛昉科技VisionFive 2单板计算机开发板测评
36189 浏览 0 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 19:11 , Processed in 0.576853 second(s), Total 40, Slave 33 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
920