Emerge Errors During build_image:
When following the Chromium OS Developer Guide emerge errors can be encountered for missing ebuild. A error that can be encountered when running build_image is:
emerge: there are no ebuilds to satisfy XYZ
Where XYZ is a library or other missing package.
This can be resolved by running:
emerge-$BOARD XYZ
Then recalling build_image:
./build_image --board=${BOARD} --noenable_rootfs_verification dev
References:
[1] Autotest ebuild documentation
From within the chroot, try running the a new test through run_remote_tests, as described in the codelab on autotest client tests, without actually adding it to an ebuild. This might give you an error about not being able to find kernel_HdParmBasic’s control file.
To resolve this, from within chroot:
emerge --search autotest | grep tests
emerge-lumpy -pv chromeos-base/autotest-tests
Two things to note:
a. The first line will say something like: “chromeos-base/autotest-tests-0.0.1-r3531“
This means it’s emerging the r3531 ebuild.
Since we would like it to use our local bits, we need to cros_workon the package.
b. You will not find kernel_HdParmBasic in the output.
cros_workon --board= start
eg: cros_workon --board=lumpy start autotest-tests
emerge the package: emerge-
eg: emerge-lumpy -pv chromeos-base/autotest-tests
Two things to note:
a. The first line will say something like:
“chromeos-base/autotest-tests-9999”
This is good, it means it’s pulling local bits.
b. You still will not find kernel_HdParmBasic in the output.
This is because your new test hasn’t been added to the ebuild yet.
Find the ebuild file: find -iname “autotest-tests-9999.ebuild” from src/third_party/.
a. It will most probably point you to:
third_party/chromiumos-overlay/chromeos-base/autotest-tests/autotest-tests-9999.ebuild.
b. open this file and add “+test_kernel_HdParmBasic” in the IUSE_TESTS section.
a. Make sure you’re cros_working on the right packages:
cros_workon --board=lumpy list
should show autotest_tests
b. Make sure the emerge will touch kernel_HdParmBasic:
emerge-lumpy -pv chromeos-base/autotest-tests | grep kernel_HdParmBasic
c. Actual emerge:
emerge-lumpy chromeos-base/autotest-tests
eg: ls /build/lumpy/usr/local/autotest/client/site_tests/kernel_HdParmBasic
you should see a line like:
Details stored under /tmp/run_remote_tests.KTQ4 Alternatively, you can specify your own results directory using ‘--results_dir_root’.
Some common ebuilds to cros_workon and emerge:
If you have come this far, you may also be interested in reading the autotest client tests codelab.