git rev: master/371ab635086e2878ada1f00a59c7ec826481ba0a Steps: 1. Launch the Build Appliance with vmplayer 2. Build a minimal image for qemux86-64 3. Run "runqemu qemux86-64" to boot up the qemu image The image can not boot up and the following error occurs: qemux86-64:~/poky/build$ runqemu qemux86-64 runqemu - INFO - Assuming MACHINE = qemux86-64 runqemu - INFO - Running MACHINE=qemux86-64 bitbake -e... runqemu - INFO - MACHINE: qemux86-64 runqemu - INFO - DEPLOY_DIR_IMAGE: /home/builder/poky/build/tmp/deploy/images/qemux86-64 runqemu - INFO - Running ls -t /home/builder/poky/build/tmp/deploy/images/qemux86-64/*.qemuboot.conf... runqemu - INFO - CONFFILE: /home/builder/poky/build/tmp/deploy/images/qemux86-64/core-image-minimal-qemux86-64-20161013112354.qemuboot.conf runqemu - INFO - Continuing with the following parameters: KERNEL: [/home/builder/poky/build/tmp/deploy/images/qemux86-64/bzImage] MACHINE: [qemux86-64] FSTYPE: [ext4] ROOTFS: [/home/builder/poky/build/tmp/deploy/images/qemux86-64/core-image-minimal-qemux86-64-20161013112354.rootfs.ext4] CONFFILE: [/home/builder/poky/build/tmp/deploy/images/qemux86-64/core-image-minimal-qemux86-64-20161013112354.qemuboot.conf] 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. Dynamic path inference can be avoided by passing a *.qemuboot.conf to runqemu, i.e. `runqemu /path/to/my-image-name.qemuboot.conf` runqemu-ifup, runqemu-ifdown or ip not found qemux86-64:~/poky/build$
The problem is /sbin is not in PATH, so "ip" is not found. "ip" is needed by the runqemu script. You can verify this by: $ which ip Hence the error message: runqemu-ifup, runqemu-ifdown or ip not found After $ export PATH=$PATH:/sbin it is possible to run qemu, for example: $ bitbake core-image-minimal $ runqemu qemux86
Patch sent to the mailing list: http://lists.openembedded.org/pipermail/openembedded-core/2016-October/127842.html
Patch merged to master: http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=74f30e91bca1f6af3bef0ff9e652c0591013b412
This issue still exists in 2.2 rc6 build ( git rev: morty/dc8508f609974cc99606b9042bfa7f870ce80228) And I filed a new bug 10504 for other issue.
I believe I found the problem. Verifying the fix.
Created attachment 3509 [details] fixed patch, PATH as intended
The new problem was by the previous "fix": When modifying the PATH variable in .bashrc, double quote characters were used, resulting in expanding the variable $PATH with the value of PATH of the system building the Build Appliance. The original intent was to enter an un-expanded (literal) $PATH. In order to that, one must use single quotes instead of double quotes. Surprisingly, this corrupted PATH still allowed to build an image and run it in qemu within BA, so the problem was not detected early enough. However, the Build Appliance built by Auto Builder had a significantly more complex path so the problem was manifested immediately. I attached a new patch I am presently testing.
Tested was successful, tested with local.conf: MACHINE = "qemux86-64" $ bitbake build-appliance-image Ran the resulting image in VirtualBox. Once in VirtualBox, both terminals were present. Verified proper PATH was exported. ran $ bitbake core-image-sato $ runqemu qemux86 Correct sato image was built and subsequently displayed in qemu. patch sent to the mailing list: http://lists.openembedded.org/pipermail/openembedded-core/2016-October/128140.html
Fixed in oe-core 6238faf901956e2a350315a66ca1ce557deaa513.
Verified with 2.3 M1 RC1 build git rev: master/573c646d4cc62dcd0c230381df4940bdf314d495