MacOS下无法构建RISC-V版QEMU?报“riscv-softmmu未知目标”错误
解决QEMU配置时"Unknown target name 'riscv-softmmu'"的问题
这个错误大概率是因为你的QEMU源码版本过旧、缺少必要子模块,或者依赖不全导致的,给你几个针对性的解决步骤:
先确保拿到的是支持RISC-V的QEMU源码
早期版本的QEMU并没有加入RISC-V的softmmu目标,所以别用太老的版本。直接克隆官方最新主线源码是最稳妥的:git clone https://git.qemu.org/git/qemu.git cd qemu git submodule update --init --recursive这里的
git submodule update一定要执行,RISC-V相关的部分代码是放在子模块里的,跳过这步会直接导致目标不被识别。检查Mac上的编译依赖是否齐全
QEMU在Mac上编译需要一些基础依赖,用Homebrew的话可以先装这些:brew install pkg-config glib pixman缺少这些依赖的话,configure过程中可能会自动禁用RISC-V目标,进而出现你看到的错误。
重新运行configure命令
做完上面两步后,回到qemu根目录,重新执行你的配置命令:./configure --target-list=riscv-softmmu这次应该就能正常识别riscv-softmmu目标了。
如果还是有问题,可以仔细看configure的输出日志,里面会明确说明哪些目标被禁用以及原因,顺着提示补全依赖或者调整源码版本就行。
内容的提问来源于stack exchange,提问作者Betty
相关产品推荐
相关产品推荐

