从0开始实现“鸿蒙qemu-riscv开机启动到launcher说明”文章并解决遇到问题

从0开始实现“鸿蒙qemu-riscv开机启动到launcher说明”文章并解决遇到问题

文章链接如下
https://isrc.iscas.ac.cn/gitlab/riscv/polyosmobile/documents/-/blob/master/milestone/qemu_launcher.md

一、创建虚拟机环境

1)VM新建ubuntu18.04虚拟机,配置时硬盘空间200G以上(很重要,很重要,很重要),版本很大。创建虚拟机所需的iso文件从官网下载即可,设置连接方式为桥连(很重要,很重要,很重要,不然后面一大堆问题)。
2)安装curl,安装ifconfig,安装pip(apt-get install python-pip python3-pip),安装ccache。
3)设置虚拟机不能锁屏:下版本需要很久时间,过程中如果虚拟机发生锁屏,下载将停止(应该不是锁屏导致的下载停止,是我创建虚拟机时没有桥连导致的网络问题影响了版本代码下载)。
4)其他配置按文章中“1.2 Ubuntu环境配置”步骤操作即可。
5)执行python3 -m pip install --user ohos-build报错
Collecting ohos-build
Could not find a version that satisfies the requirement ohos-build (from versions: )
No matching distribution found for ohos-build
使用命令:python3 -m pip install --user ohos-build i https://pypi.tuna.tsinghua.edu.cn/simple/ --trusted-host pypi.tuna.tsinghua.edu.cn
仍然不行。
此命令是ohos编译完执行 ./qemu_riscv64_run.sh时用到的。需要虚拟机直接桥连到物理网卡才能成功下载。
6)执行 bash root_init.sh卡住:暂未解决,不确定是否对后续步骤有影响。
已解决:需要虚拟机设置桥连,再chmod,然后再次执行即可。

二、代码下载

1)先下载并编译ohos-qemu,然后再安装QEMU模拟环境(因为装QEMU模拟环境需要libm-2.29.so,但从libm-2.27.so升级libm-2.29.so后(使用了https://blog.csdn.net/m0_37201243/article/details/123641552 中的方法),ohos-qemu编译会报错,花了两天没解决该问题。问题具体见文章https://blog.csdn.net/qqq1112345/article/details/130941909
2)./code_download.sh下代码过程中发生了卡在“Receiving objects: 62% (1422/2285), 22.71 MiB | 11.26 MiB/s”不动的情况:
再次执行 git config --global credential.helper store可以部分解决该问题。
再不行的话执行 git init 或者虚拟机网络改成“桥连接”试试。(新建虚拟机使用桥接需要手动安装vm-tools,否则无法在虚拟机和宿主机之间进行复制粘贴)
参考https://stackoverflow.com/questions/11941175/git-fetch-pull-clone-hangs-on-receiving-objects

三、QEMU安装

1)执行以下命令失败:
sudo apt-get install ninja-build
sudo apt-get install libglib2.0-dev
sudo apt-get install libpixman-1-dev
sudo apt-get install libusb-1.0-0-dev
sudo apt-get install libsdl2-2.0
sudo apt-get install libsdl2-dev
sudo pip3 install --user meson
sudo apt install device-tree-compiler
解决方法:需要先执行 sudo apt-get update,apt install python3-pip.

TO BE CONTINUE…

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我会根据你的要求帮你解答这个问题。以下是在qemu-riscv64上移植rt-thread并搭建weston环境的具体步骤细节: 1. 准备工作 首先,你需要安装RISC-V工具链和qemu-riscv64模拟器。你可以从官方网站下载最新版本的工具链和模拟器。 2. 获取rt-thread代码 你需要从rt-thread官方网站下载最新的代码。rt-thread是一个开源的实时操作系统,适用于嵌入式系统。 3. 编译rt-thread 在编译rt-thread之前,你需要设置交叉编译环境。你可以在rt-thread的根目录下执行以下命令: ``` export RTT_CC=riscv64-unknown-elf-gcc export RTT_EXEC_PATH=/path/to/riscv64-unknown-elf/bin export RTT_TOOL_PATH=/path/to/riscv64-unknown-elf/lib/gcc/riscv64-unknown-elf/<version> ``` 然后,你可以执行以下命令来编译rt-thread: ``` scons --target=rv64imac-qemu --riscv64-unknown-elf-gcc=/path/to/riscv64-unknown-elf-gcc ``` 这将会在rt-thread的根目录下生成一个rtthread.elf文件。 4. 启动qemu-riscv64模拟器 你需要启动qemu-riscv64模拟器,并将rtthread.elf文件加载到模拟器中。你可以在命令行中执行以下命令: ``` qemu-system-riscv64 -M virt -nographic -m 256M -kernel rtthread.elf ``` 这将会启动qemu-riscv64模拟器,并将rtthread.elf文件加载到模拟器中。 5. 搭建weston环境 在rt-thread中,你可以使用weston作为图形界面。你需要在rt-thread中启动weston,并将其连接到你的主机上。 首先,你需要在模拟器中安装weston。你可以使用以下命令来安装weston: ``` opkg install weston ``` 然后,你需要启动weston。你可以在模拟器中执行以下命令: ``` weston-launch ``` 这将会启动weston并将其连接到你的主机上。 6. 测试 现在,你可以在rt-thread中使用weston来测试图形界面。你可以在模拟器中运行以下命令来启动一个简单的weston应用程序: ``` weston-simple-dmabuf ``` 然后,你可以在你的主机上看到weston应用程序的输出。 以上就是在qemu-riscv64上移植rt-thread并搭建weston环境的具体步骤细节。希望能对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值