On a fresh ubuntu machine, emerge-${BOARD} factory & factory-mini are both failing in closurebuilder.py.
They are failing a _GetJavaVersion():
$ emerge-elm factory
!!! CONFIG_PROTECT is empty for '/build/elm/'
Calculating dependencies... done!
>>> Emerging (1 of 1) chromeos-base/factory-0.2.0-r100::chromiumos for /build/elm/
* webgl-aquarium-20130524.tar.bz2 RMD160 SHA1 SHA256 size ;-) ... [ ok ]
* Running stacked hooks for pre_pkg_setup
* sysroot_build_bin_dir ... [ ok ]
* Running stacked hooks for pre_src_unpack
* python_multilib_setup ... [ ok ]
>>> Unpacking source...
* Using local source dir(s): /mnt/host/source/src/platform/factory
* path: /mnt/host/source/src/platform/factory
* destdir: /build/elm/tmp/portage/chromeos-base/factory-0.2.0-r100/work/factory-0.2.0
>>> Source unpacked in /build/elm/tmp/portage/chromeos-base/factory-0.2.0-r100/work
* Running stacked hooks for post_src_unpack
* asan_init ... [ ok ]
>>> Preparing source in /mnt/host/source/src/platform/factory ...
>>> Source prepared.
>>> Configuring source in /mnt/host/source/src/platform/factory ...
>>> Source configured.
>>> Compiling source in /mnt/host/source/src/platform/factory ...
make -j8
make -C py/goofy/static OUTPUT_DIR=/build/elm/tmp/portage/chromeos-base/factory-0.2.0-r100/work/build/closure
make[1]: Entering directory '/mnt/host/source/src/platform/factory/py/goofy/static'
mkdir -p "/build/elm/tmp/portage/chromeos-base/factory-0.2.0-r100/work/build/closure/js"
# For now, we just use the compiler (--output_mode=compiled) to check
# Replace all references to URLs with resources in this project.
# the correctness of our code, and we actually deploy the version that
mkdir -p "/build/elm/tmp/portage/chromeos-base/factory-0.2.0-r100/work/build/closure/css"
# is the concatenation of all the dependencies (--output_mode=script).
python /opt/closure-library/closure/bin/build/closurebuilder.py --root /opt/closure-library --root ../js -n cros.factory.Goofy -n cros.factory.DeviceManager --compiler_jar=/opt/closure-compiler-bin-0/lib/closure-compiler-bin.jar -f --warning_level=VERBOSE --output_mode=compiled --output_file=/dev/null
sed -re 's"//ssl\.gstatic\.com/(closure|editor)"/images"g' /opt/closure-library/closure/goog/css/checkbox.css /opt/closure-library/closure/goog/css/common.css /opt/closure-library/closure/goog/css/dialog.css /opt/closure-library/closure/goog/css/menu.css /opt/closure-library/closure/goog/css/menuitem.css /opt/closure-library/closure/goog/css/menuseparator.css /opt/closure-library/closure/goog/css/submenu.css /opt/closure-library/closure/goog/css/tooltip.css /opt/closure-library/closure/goog/css/tree.css >/build/elm/tmp/portage/chromeos-base/factory-0.2.0-r100/work/build/closure/css/closure.css
/opt/closure-library/closure/bin/build/closurebuilder.py: Scanning paths...
/opt/closure-library/closure/bin/build/closurebuilder.py: 866 sources scanned.
/opt/closure-library/closure/bin/build/closurebuilder.py: Building dependency tree..
Traceback (most recent call last):
File "/opt/closure-library/closure/bin/build/closurebuilder.py", line 256, in <module>
main()
File "/opt/closure-library/closure/bin/build/closurebuilder.py", line 241, in main
options.compiler_flags)
File "/opt/closure-library/closure/bin/build/jscompiler.py", line 50, in Compile
if not (distutils.version.LooseVersion(_GetJavaVersion()) >=
File "/opt/closure-library/closure/bin/build/jscompiler.py", line 34, in _GetJavaVersion
return _VERSION_REGEX.search(version_line).group(1)
AttributeError: 'NoneType' object has no attribute 'group'
make[1]: *** [Makefile:65: /build/elm/tmp/portage/chromeos-base/factory-0.2.0-r100/work/build/closure/js/goofy.js] Error 1
make[1]: Leaving directory '/mnt/host/source/src/platform/factory/py/goofy/static'
make: *** [Makefile:137: closure] Error 2
* ERROR: chromeos-base/factory-0.2.0-r100::chromiumos failed (compile phase):
* emake failed
*
* If you need support, post the output of `emerge --info '=chromeos-base/factory-0.2.0-r100::chromiumos'`,
* the complete build log and the output of `emerge -pqv '=chromeos-base/factory-0.2.0-r100::chromiumos'`.
* The complete build log is located at '/build/elm/tmp/portage/logs/chromeos-base:factory-0.2.0-r100:20170209-090038.log'.
* For convenience, a symlink to the build log is located at '/build/elm/tmp/portage/chromeos-base/factory-0.2.0-r100/temp/build.log'.
* The ebuild environment file is located at '/build/elm/tmp/portage/chromeos-base/factory-0.2.0-r100/temp/environment'.
* Working directory: '/mnt/host/source/src/platform/factory'
* S: '/mnt/host/source/src/platform/factory'
>>> Failed to emerge chromeos-base/factory-0.2.0-r100 for /build/elm/, Log file:
>>> '/build/elm/tmp/portage/logs/chromeos-base:factory-0.2.0-r100:20170209-090038.log'
* Messages for package chromeos-base/factory-0.2.0-r100 merged to /build/elm/:
* ERROR: chromeos-base/factory-0.2.0-r100::chromiumos failed (compile phase):
* emake failed
*
* If you need support, post the output of `emerge --info '=chromeos-base/factory-0.2.0-r100::chromiumos'`,
* the complete build log and the output of `emerge -pqv '=chromeos-base/factory-0.2.0-r100::chromiumos'`.
* The complete build log is located at '/build/elm/tmp/portage/logs/chromeos-base:factory-0.2.0-r100:20170209-090038.log'.
* For convenience, a symlink to the build log is located at '/build/elm/tmp/portage/chromeos-base/factory-0.2.0-r100/temp/build.log'.
* The ebuild environment file is located at '/build/elm/tmp/portage/chromeos-base/factory-0.2.0-r100/temp/environment'.
* Working directory: '/mnt/host/source/src/platform/factory'
* S: '/mnt/host/source/src/platform/factory'
Comment 1 by djkurtz@chromium.org
, Feb 9 2017