yocto 项目 runqemu:找不到命令

yocto project runqemu: command not found

我正在设置我的 yocto 项目,为此我遵循了以下步骤:

  1. 下载 Poky 源代码 (ubuntu: /yocto/source)
    $ git 克隆 git://git.yoctoproject.org/poky
  2. 查看最新的 branch/release (zeus)
    $ git结帐宙斯
  3. 第三步:准备构建环境(ubuntu:/yocto/source/poky)
    $ 源 oe-init-build-env ../../build
    上面的脚本将移动到构建文件夹中,并在 conf 文件夹 local.conf、bblayers.conf 中的 conf 文件夹
  4. 中创建两个文件
  5. 构建Linux分布(unbuntu:/yoctu/build)
    $ bitbake 核心图像最小
  6. 检查 runqemu (ubuntu: /yocto/source/poky/scripts)
    $ ls runqemu // 它在那里
  7. 运行 qemu 中生成的图像 (ubuntu: /yocto/build)
    $ runqemu qemux86-64 core-image-minimal

其他 window 为 qemu 打开并且图像运行良好。
问题
第一次使用后关闭终端,然后通过 运行 $ runqemu qemux86-64 core-image-minimal in (ubuntu: /yocto/build) 弹出错误 runqemu: command not found 如果我在 poky 目录中写 bitbake 同样的错误弹出 bitbake: command not found.
注意:我已经重复了整个过程 3 次以检查安装是否不正确,但我这边的一切都很好。

yocto 项目层次结构:

如果您关闭 poky 环境终端,您总是 MUST 重新 source 环境。

poky 的 oe-init-build-env 为您设置了所有命令,例如:

runqemu* 命令出现在 poky/scripts.

该脚本还从 poky/bitbake/bin.

导出 bitbake* 命令

负责的线路在:

  • poky/scripts/oe-buildenv-internal(第 99 行):
# Make sure our paths are at the beginning of $PATH
for newpath in "$BITBAKEDIR/bin" "$OEROOT/scripts"; do
    # Remove any existences of $newpath from $PATH
    PATH=$(echo $PATH | sed -re "s#(^|:)$newpath(:|$)##g;s#^:##")

    # Add $newpath to $PATH
    PATH="$newpath:$PATH"
done

所以,如果您打开新终端,总是:

source /yocto/source/poky/oe-init-build-env /yoctu/build

编辑

如果您已有构建文件夹,请确保为该文件夹提供正确的 oe-init-build-env 脚本路径。

如果您提供 non-existing 文件夹的新路径,脚本将为您创建另一个版本。

EDIT2

根据你的路径获取poky环境:

  • 亲戚:
cd ~/Documents/yocto/source/poky
source oe-init-build-env build
                           ^
                           |
(because build is in same folder as the script)
  • 绝对值:
source /home/$USER/Documents/yocto/source/poky/oe-init-build-env /home/$USER/Documents/yocto/source/poky/build 

规则

source <path/to/oe-init-build-env> <path/to/build/folder>

如果 <path/to/build/folder> 存在,那么 poky 将获取现有的构建环境。

如果 <path/to/build/folder> 不存在,poky 将在相同的名称和路径下创建新的构建。