运行 yocto runqemu 的时候好像找不到ip

When running yocto runqemu the ip seems not to be found

我建了一个yocto镜像(仅供参考见本题末尾) 当我尝试使用 运行qemu 运行 它时,出现以下错误:

runqemu - ERROR - runqemu-ifup: /opt/yocto/workspace/openembedded-core/scripts/runqemu-ifup
runqemu - ERROR - runqemu-ifdown: /opt/yocto/workspace/openembedded-core/scripts/runqemu-ifdown
runqemu - ERROR - ip: None
runqemu - ERROR - In order for this script to dynamically infer paths
 kernels or filesystem images, you either need bitbake in your PATH
 or to source oe-init-build-env before running this script.

我在 运行 脚本之前获取了 ot-init-build-env。

好像找不到ip。我需要在 运行 之前修改 /etc/hosts 吗?


我使用的项目是meta-ros but I am building my images inside a docker image as in this repository

this tutorial 步骤 5 中说

-- 你在 qemu 虚拟机中启动这个系统

runqemu <MACHINE> core-image-ros-roscore

<MACHINE> 是在 local.conf 中设置的标识符,例如 qemux86。在Linux虚拟机系统上,可以空密码以root身份登录。现在,您确保通过添加

解析自己的主机名
127.0.0.1    <HOSTNAME>.localdomain        <HOSTNAME>

到/etc/hosts文件,

这里的 HOSTNAME 是什么?

这实际上是在抱怨“ip”命令不是 被发现,不是你的IP地址,你需要安装它。

根据您的发行版,包名称可能会更改,但对于 Ubuntu/Debian,您需要的包是 iproute2

sudo apt update && sudo apt install iproute2

应该可以解决问题。

此外,如果您没有安装所需的软件包,您可能还缺少其他一些软件包,您可以从此处获取所需软件包的列表: https://docs.yoctoproject.org/brief-yoctoprojectqs/index.html#build-host-packages