New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 765955 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Oct 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug-Regression



Sign in to add a comment

Attempting to build chromium from sources is failing

Reported by lem...@gmail.com, Sep 16 2017

Issue description

UserAgent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.90 Safari/537.36 Vivaldi/1.91.867.38

Steps to reproduce the problem:
I'm attempting to build `headless_shell` from sources:

I've written a little shell-script to do so:

	#!/bin/bash

	set -e

	rm -rf /tmp/cr-build
	mkdir -p /tmp/cr-build
	cd /tmp/cr-build
	fetch chromium
	gclient sync
	cd src
	git pull origin master
	gclient runhooks
	mkdir -p out/Headless
	echo 'import("//build/args/headless.gn")'   > out/Headless/args.gn
	echo 'is_debug = false'                    >> out/Headless/args.gn
	echo 'symbol_level = 0'                    >> out/Headless/args.gn
	echo 'is_component_build = false'          >> out/Headless/args.gn
	echo 'remove_webcore_debug_symbols = true' >> out/Headless/args.gn
	echo 'enable_nacl = false'                 >> out/Headless/args.gn
	gn gen out/Headless
	ninja -C out/Headless headless

As far as I can tell, this matches the described steps in 
https://chromium.googlesource.com/chromium/src/+/lkcr/docs/linux_build_instructions.md
with the few changes needed for the different target. 

The build then fails with 

In file included from ../../headless/lib/browser/headless_browser_impl.h:18:
../../headless/lib/browser/headless_devtools_manager_delegate.h:16:10: fatal error: 'printing/features/features.h' file not found
#include "printing/features/features.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.

In file included from ../../headless/lib/browser/headless_browser_impl.h:18:
../../headless/lib/browser/headless_devtools_manager_delegate.h:16:10: fatal error: 'printing/features/features.h' file not found
#include "printing/features/features.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.

In file included from ../../headless/lib/browser/headless_browser_context_impl.h:15:
../../content/public/browser/content_browser_client.h:31:10: fatal error: 'media/mojo/interfaces/remoting.mojom.h' file not found
#include "media/mojo/interfaces/remoting.mojom.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.

In file included from ../../headless/lib/browser/headless_browser_context_impl.h:15:
../../content/public/browser/content_browser_client.h:31:10: fatal error: 'media/mojo/interfaces/remoting.mojom.h' file not found
#include "media/mojo/interfaces/remoting.mojom.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.

Note that I've heavily truncated this exception listing, as it's extremely verbose. The 
problem seems to boil down to missing  'printing/features/features.h' and
'media/mojo/interfaces/remoting.mojom.h' header files.

What is the expected behavior?

What went wrong?
I assume there were changes made that didn't properly  accommodate the `import("//build/args/headless.gn")` build parameter.

Did this work before? Yes I haven't build headless shell for a few months, but I have done so successfully in the past.

Chrome version: N/A  Channel: n/a
OS Version: N/A
Flash Version: Shockwave Flash 21.0 r0
 

Comment 1 by lem...@gmail.com, Sep 17 2017

I just re-ran build/install-build-deps.sh, and it didn't seem to help either.

Comment 2 by lem...@gmail.com, Sep 17 2017

Running a normal build does appear to create both the missing header files. 

Comment 3 by ajha@chromium.org, Sep 18 2017

Components: Build
Labels: Needs-Milestone TE-NeedsTriageHelp
Cc: dvallet@chromium.org
Components: -Build -Platform>DevTools Internals>Headless
Sorry for the late reply!
Can you confirm if this is still happening to you? I haven't heard of any other problems with the build lately (headless_shell is build in Chromium trybots so it should be caught by now)

It could be something with the config/OS setup, in that case it might be worth investigating.  

Comment 5 by lem...@gmail.com, Oct 3 2017

I've built `headless_shell` in this VM before. I'll give it a poke again now, to see what happens.

Comment 6 by lem...@gmail.com, Oct 3 2017

Hrmmm, is it no longer possible to build chromium with 4 GB of ram?

I tried doing a normal chromium build (which worked a month or so ago), and it failed with OOM errors. This is on a very stock Ubuntu 16.04 LTS install.

I upped the VM memory to 8 GB, and we'll see what happens.

------

As an aside, is it possible to get incremental builds to work after just updating from git? I've never managed to build chrome without completely nuking my local copy, and re-checking out. 

I've tried basically every combination of git pull/gclient <things> I could think of, without luck. How are you *supposed* to update a checked-out version of the chrome source tree?

Comment 7 by lem...@gmail.com, Oct 4 2017

Nope, still seems to happen:


Done. Made 6405 targets from 1335 files in 20348ms
Done. Made 6529 targets from 1379 files in 6766ms
ninja: Entering directory `out/Headless'
[2319/9432] ACTION //third_party/icu:make_data_assembly(//build/toolchain/linux:clang_x64)
Generated gen/third_party/icu/icudtl_dat.S
[8932/9432] CXX obj/headless/headless/headless_browser_context_impl.o
FAILED: obj/headless/headless/headless_browser_context_impl.o
../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/headless/headless/headless_browser_context_impl.o.d -DV8_DEPRECATION_WARNINGS -DUSE_AURA=1 -DUSE_NSS_CERTS=1 -DUSE_OZONE=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=\"313786-1\" -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DHEADLESS_IMPLEMENTATION -DHEADLESS_USE_EMBEDDED_RESOURCES -DUSE_EGL -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSK_HAS_PNG_LIBRARY -DSK_HAS_WEBP_LIBRARY -DSK_HAS_JPEG_LIBRARY -DSK_SUPPORT_GPU=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DU_STATIC_IMPLEMENTATION -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC -DUCHAR_TYPE=uint16_t -DLEVELDB_PLATFORM_CHROMIUM=1 -DMESA_EGL_NO_X11_HEADERS -I../.. -Igen -I../../third_party/libwebp/src -I../../third_party/khronos -I../../gpu -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -I../../third_party/boringssl/src/include -I../../build/linux/debian_jessie_amd64-sysroot/usr/include/nss -I../../build/linux/debian_jessie_amd64-sysroot/usr/include/nspr -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/encode -I../../third_party/skia/include/gpu -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/third_party/vulkan -I../../third_party/skia/include/codec -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/ced/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -I../../third_party/leveldatabase -I../../third_party/leveldatabase/src -I../../third_party/leveldatabase/src/include -I../../third_party/libwebm/source -Igen -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Igen/v8/include -I../../third_party/mesa/src/include -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -pthread -fcolor-diagnostics -Xclang -mllvm -Xclang -instcombine-lower-dbg-declare=1 -m64 -march=x86-64 -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-unused-lambda-capture -Wno-user-defined-warnings -Wno-enum-compare-switch -Wno-tautological-unsigned-zero-compare -Wno-null-pointer-arithmetic -Wno-tautological-unsigned-enum-zero-compare -O2 -fno-ident -fdata-sections -ffunction-sections -fomit-frame-pointer -g0 -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-auto-raw-pointer -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wno-header-guard -std=gnu++14 -fno-rtti -nostdinc++ -isystem../../buildtools/third_party/libc++/trunk/include -isystem../../buildtools/third_party/libc++abi/trunk/include --sysroot=../../build/linux/debian_jessie_amd64-sysroot -fno-exceptions -fvisibility-inlines-hidden -c ../../headless/lib/browser/headless_browser_context_impl.cc -o obj/headless/headless/headless_browser_context_impl.o
In file included from ../../headless/lib/browser/headless_browser_context_impl.cc:5:
In file included from ../../headless/lib/browser/headless_browser_context_impl.h:15:
../../content/public/browser/content_browser_client.h:30:10: fatal error: 'media/mojo/interfaces/remoting.mojom.h' file not found
#include "media/mojo/interfaces/remoting.mojom.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
[8945/9432] CXX obj/headless/headless/types_dom_snapshot.o
ninja: build stopped: subcommand failed.

It looks like use_component_build = false is the culprit. 
Try compiling again as a component build

Only chrome, headless_shell, headless_example can be build as non components

re: incremental builds. 
There are several ways, they way I do is the following (which is probably not the best way!): 

1. Have a branch (e.g. master) with origin/master as upstream
2a. git fetch origin master && git rebase origin/master master
2.b alternatively you can do "git pull" in your branch
3. gclient sync

Hope that helps!


Status: WontFix (was: Unconfirmed)
Thanks David! Assuming there's nothing for us to do here based on comment 8.

Comment 10 by lem...@gmail.com, Oct 7 2017

Uh, what? I'm specifically trying to build headless_shell.

Comment 11 by lem...@gmail.com, Oct 7 2017

Ok, yeah, I completely blew away the entire VM I'm using for compiling, reinstalled *everything* and it's still failing:

durr@cr-build:/media/Storage/Scripts/AutoTriever/vendored$ cat update-chromium.sh
#!/bin/bash

set -e

rm -rf /tmp/cr-build
mkdir -p /tmp/cr-build
cd /tmp/cr-build
fetch --no-history chromium
gclient sync
cd src
git pull origin master
build/install-build-deps.sh --no-prompt
gclient runhooks
mkdir -p out/Headless
mkdir -p out/Default
echo 'import("//build/args/headless.gn")'   > out/Headless/args.gn
echo 'is_debug = false'                    >> out/Headless/args.gn
echo 'symbol_level = 0'                    >> out/Headless/args.gn
echo 'remove_webcore_debug_symbols = true' >> out/Headless/args.gn
echo 'enable_nacl = false'                 >> out/Headless/args.gn

echo 'is_debug = false'                     > out/Default/args.gn
echo 'symbol_level = 0'                    >> out/Default/args.gn
echo 'remove_webcore_debug_symbols = true' >> out/Default/args.gn
echo 'enable_nacl = false'                 >> out/Default/args.gn
gn gen out/Headless
gn gen out/Default
ninja -C out/Headless headless
ninja -C out/Default

ninja: Entering directory `out/Headless'
[2316/9438] ACTION //third_party/icu:make_data_assembly(//build/toolchain/linux:clang_x64)
Generated gen/third_party/icu/icudtl_dat.S
[8956/9438] CXX obj/headless/headless/headless_browser_context_impl.o
FAILED: obj/headless/headless/headless_browser_context_impl.o
../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/headless/headless/headless_browser_context_impl.o.d -DV8_DEPRECATION_WARNINGS -DUSE_AURA=1 -DUSE_NSS_CERTS=1 -DUSE_OZONE=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DCR_CLANG_REVISION=\"313786-1\" -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DHEADLESS_IMPLEMENTATION -DHEADLESS_USE_EMBEDDED_RESOURCES -DUSE_EGL -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSK_HAS_PNG_LIBRARY -DSK_HAS_WEBP_LIBRARY -DSK_HAS_JPEG_LIBRARY -DSK_SUPPORT_GPU=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DU_STATIC_IMPLEMENTATION -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC -DUCHAR_TYPE=uint16_t -DLEVELDB_PLATFORM_CHROMIUM=1 -DMESA_EGL_NO_X11_HEADERS -I../.. -Igen -I../../third_party/libwebp/src -I../../third_party/khronos -I../../gpu -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -I../../third_party/boringssl/src/include -I../../build/linux/debian_jessie_amd64-sysroot/usr/include/nss -I../../build/linux/debian_jessie_amd64-sysroot/usr/include/nspr -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/encode -I../../third_party/skia/include/gpu -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/third_party/vulkan -I../../third_party/skia/include/codec -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/ced/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -I../../third_party/leveldatabase -I../../third_party/leveldatabase/src -I../../third_party/leveldatabase/src/include -I../../third_party/libwebm/source -Igen -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Igen/v8/include -I../../third_party/mesa/src/include -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -pthread -fcolor-diagnostics -Xclang -mllvm -Xclang -instcombine-lower-dbg-declare=1 -no-canonical-prefixes -m64 -march=x86-64 -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-unused-lambda-capture -Wno-user-defined-warnings -Wno-enum-compare-switch -Wno-tautological-unsigned-zero-compare -Wno-null-pointer-arithmetic -Wno-tautological-unsigned-enum-zero-compare -O2 -fno-ident -fdata-sections -ffunction-sections -fomit-frame-pointer -g0 -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-auto-raw-pointer -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wno-header-guard -std=gnu++14 -fno-rtti -nostdinc++ -isystem../../buildtools/third_party/libc++/trunk/include -isystem../../buildtools/third_party/libc++abi/trunk/include --sysroot=../../build/linux/debian_jessie_amd64-sysroot -fno-exceptions -fvisibility-inlines-hidden -c ../../headless/lib/browser/headless_browser_context_impl.cc -o obj/headless/headless/headless_browser_context_impl.o
In file included from ../../headless/lib/browser/headless_browser_context_impl.cc:5:
In file included from ../../headless/lib/browser/headless_browser_context_impl.h:15:
../../content/public/browser/content_browser_client.h:30:10: fatal error: 'media/mojo/interfaces/remoting.mojom.h' file not found
#include "media/mojo/interfaces/remoting.mojom.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
[8969/9438] CXX obj/content/common/common/content_message_generator.o




Comment 12 by lem...@gmail.com, Oct 7 2017

FWIW:

	durr@cr-build:/media/Storage/Scripts/AutoTriever/vendored$ uname -a
	Linux cr-build 4.4.0-96-generic #119-Ubuntu SMP Tue Sep 12 14:59:54 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
	durr@cr-build:/media/Storage/Scripts/AutoTriever/vendored$ cat /etc/lsb-release
	DISTRIB_ID=Ubuntu
	DISTRIB_RELEASE=16.04
	DISTRIB_CODENAME=xenial
	DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"
	durr@cr-build:/media/Storage/Scripts/AutoTriever/vendored$


This is a brand new VM created via the xen-create-image tool, 12 vCPUs 8 GB of RAM, 40 GB hard drive. 

The entire VM setup procedure is the following script (after xen-create-image has finished):

	#!/bin/bash

	set -e

	sudo mkdir -p /home/durr
	sudo chown -R durr:durr /home/durr

	# Set up proper UTF-8 console
	sudo locale-gen;
	sudo locale-gen --purge en_US.UTF-8
	echo -e 'LANG="en_US.UTF-8"\nLANGUAGE="en_US:en"\n' | sudo tee /etc/default/locale
	sudo update-locale LANG=en_US.utf8 LC_MESSAGES=en_US.utf8 LC_ALL=en_US.utf8;

	# Unfuck broken timesyncd-update
	sudo systemctl stop systemd-timesyncd;
	sudo apt-get update;
	sudo apt-get dist-upgrade -y;

	# Install and configure byobu
	sudo apt-get install wget htop screen byobu nano -y;
	byobu-select-backend screen;
	byobu-ctrl-a screen;
	byobu-enable;

	# Setup SNMP
	sudo apt-get install snmpd -y;
	sudo sed -i "s/agentAddress  udp:127.0.0.1:161/#agentAddress  udp:127.0.0.1:161/g" /etc/snmp/snmpd.conf;
	sudo sed -i "s/#agentAddress udp:161,udp6:\[::1\]:161/agentAddress udp:161,udp6:\[::1\]:161/g" /etc/snmp/snmpd.conf;
	sudo sed -i "s/#rocommunity public  localhost/rocommunity <snip> default/g" /etc/snmp/snmpd.conf;
	sudo service snmpd restart;

	# Setup Landscape
	sudo apt-get install landscape-client -y;
	openssl s_client -showcerts -connect <snip>:443 </dev/null 2>/dev/null|openssl x509 -outform PEM | sudo tee /etc/landscape/landscape_server.pem;
	echo ssl_public_key = /etc/landscape/landscape_server.pem | sudo tee -a /etc/landscape/client.conf;
	sudo landscape-config --account-name=standalone --url https://<snip>/message-system --ping-url http://<snip>/ping --silent --computer-title=$(hostname) --ssl-public-key=/etc/landscape/landscape_server.pem;

	# Attach network drive
	sudo apt-get install nfs-common -y
	echo "<snip>:/media/Storage /media/Storage nfs    rw,hard,intr,rsize=65536,wsize=65536,nfsvers=4    0       0" | sudo tee -a /etc/fstab
	sudo mkdir /media/Storage
	sudo mount -a

	# Fix UID
	sudo sed -i "s/durr:x:1000:durr/durr:x:1001:durr/g" /etc/group
	sudo sed -i "s/lpadmin:x:1001:durr//g" /etc/group

	# General packages
	sudo apt-get install git build-essential htop python3-dev -y

	sudo wget -O /usr/local/bin/rmate https://raw.github.com/aurora/rmate/master/rmate
	sudo chmod +x /usr/local/bin/rmate


	sudo chown -R durr:durr /home/durr



Can you compile headless_shell? 

What if you compile with the following args?
import("//build/args/headless.gn")
is_debug = false
symbol_level = 0
is_component_build = false


Comment 14 by lem...@gmail.com, Oct 9 2017

From the outset, the issue is that I haven't been able to compile headless_shell. 

Anyways, attempting the following way:

durr@cr-build:/media/Storage/Scripts/AutoTriever/vendored$ cat update-chromium.sh
#!/bin/bash

set -e

rm -rf /tmp/cr-build
mkdir -p /tmp/cr-build
cd /tmp/cr-build
fetch --no-history chromium
gclient sync
cd src
git pull origin master
build/install-build-deps.sh --no-prompt
gclient runhooks
mkdir -p out/Headless
mkdir -p out/Default

echo 'import("//build/args/headless.gn")'   > out/Headless/args.gn
echo 'is_debug = false'                    >> out/Headless/args.gn
echo 'symbol_level = 0'                    >> out/Headless/args.gn
echo 'is_component_build = false'          >> out/Headless/args.gn

gn gen out/Headless
ninja -C out/Headless headless

durr@cr-build:/media/Storage/Scripts/AutoTriever/vendored$ ./update-chromium.sh
Running: gclient root
Running: gclient config --spec 'solutions = [
  {
    "url": "https://chromium.googlesource.com/chromium/src.git",
    "managed": False,
    "name": "src",
    "deps_file": ".DEPS.git",
    "custom_deps": {},
  },
]
'
Running: gclient sync --no-history
Running: git submodule foreach 'git config -f $toplevel/.git/config submodule.$name.ignore all'
Running: git config --add remote.origin.fetch '+refs/tags/*:refs/tags/*'
Running: git config diff.ignoreSubmodules all
Syncing projects: 100% (88/88), done.
________ running '/usr/bin/python src/build/landmines.py' in '/tmp/cr-build'
________ running '/usr/bin/python src/third_party/depot_tools/update_depot_tools_toggle.py --disable' in '/tmp/cr-build'
________ running '/usr/bin/python src/tools/remove_stale_pyc_files.py src/android_webview/tools src/build/android src/gpu/gles2_conform_support src/infra src/ppapi src/printing src/third_party/catapult src/third_party/closure_compiler/build src/third_party/WebKit/Tools/Scripts src/tools' in '/tmp/cr-build'
________ running '/usr/bin/python src/build/download_nacl_toolchains.py --mode nacl_core_sdk sync --extract' in '/tmp/cr-build'
________ running '/usr/bin/python src/build/linux/sysroot_scripts/install-sysroot.py --running-as-hook' in '/tmp/cr-build'
Jessie amd64 sysroot image already up to date: /tmp/cr-build/src/build/linux/debian_jessie_amd64-sysroot
Jessie i386 sysroot image already up to date: /tmp/cr-build/src/build/linux/debian_jessie_i386-sysroot
________ running '/usr/bin/python src/build/vs_toolchain.py update' in '/tmp/cr-build'
________ running '/usr/bin/python src/third_party/binutils/download.py' in '/tmp/cr-build'
________ running '/usr/bin/python src/tools/clang/scripts/update.py' in '/tmp/cr-build'
Updating Clang to 313786-1...
Clang is already up to date.
________ running '/usr/bin/python src/build/util/lastchange.py -o src/build/util/LASTCHANGE' in '/tmp/cr-build'
________ running '/usr/bin/python src/build/util/lastchange.py -m SKIA_COMMIT_HASH -s src/third_party/skia --header src/skia/ext/skia_commit_hash.h' in '/tmp/cr-build'
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --platform=linux* --no_auth --bucket chromium-gn -s src/buildtools/linux64/gn.sha1' in '/tmp/cr-build'
0> File src/buildtools/linux64/gn exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.011363 second(s)
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --platform=linux* --no_auth --bucket chromium-clang-format -s src/buildtools/linux64/clang-format.sha1' in '/tmp/cr-build'
0> File src/buildtools/linux64/clang-format exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.006314 second(s)
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --platform=linux* --no_auth --bucket chromium-luci -d src/tools/luci-go/linux64' in '/tmp/cr-build'
0> File src/tools/luci-go/linux64/isolate exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.030919 second(s)
________ running '/usr/bin/python src/third_party/instrumented_libraries/scripts/download_binaries.py' in '/tmp/cr-build'
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --no_auth -u --bucket v8-wasm-fuzzer -s src/v8/test/fuzzer/wasm_corpus.tar.gz.sha1' in '/tmp/cr-build'
0> File src/v8/test/fuzzer/wasm_corpus.tar.gz exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.003926 second(s)
________ running '/usr/bin/python src/third_party/WebKit/Source/devtools/scripts/local_node/node.py --running-as-hook --version' in '/tmp/cr-build'
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --platform=linux* --extract --no_auth --bucket chromium-nodejs/6.9.4 -s src/third_party/node/linux/node-linux-x64.tar.gz.sha1' in '/tmp/cr-build'
0> File src/third_party/node/linux/node-linux-x64.tar.gz exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.032354 second(s)
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --extract --no_auth --bucket chromium-nodejs -s src/third_party/node/node_modules.tar.gz.sha1' in '/tmp/cr-build'
0> File src/third_party/node/node_modules.tar.gz exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.013709 second(s)
________ running '/usr/bin/python src/tools/perf/conditionally_execute --gyp-condition fetch_telemetry_dependencies=1 src/third_party/catapult/telemetry/bin/fetch_telemetry_binary_dependencies' in '/tmp/cr-build'
Not found "fetch_telemetry_dependencies=1" condition in GYP_DEFINES="[]". Skip script execution.
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --platform=linux* --no_auth --num_threads=4 --bucket chromium-tools-traffic_annotation -d src/tools/traffic_annotation/bin/linux64' in '/tmp/cr-build'
1> File src/tools/traffic_annotation/bin/linux64/traffic_annotation_auditor exists and SHA1 matches. Skipping.
0> File src/tools/traffic_annotation/bin/linux64/traffic_annotation_extractor exists and SHA1 matches. Skipping.
Success!
Downloading 2 files took 0.056698 second(s)
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --no_auth --num_threads=4 --bucket chromium-binary-patching -d src/chrome/installer/zucchini/testdata' in '/tmp/cr-build'
1> File src/chrome/installer/zucchini/testdata/chrome64_1.exe exists and SHA1 matches. Skipping.
0> File src/chrome/installer/zucchini/testdata/chrome64_2.exe exists and SHA1 matches. Skipping.
3> File src/chrome/installer/zucchini/testdata/setup1.exe exists and SHA1 matches. Skipping.
2> File src/chrome/installer/zucchini/testdata/setup2.exe exists and SHA1 matches. Skipping.
Success!
Downloading 4 files took 0.006986 second(s)
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --no_auth --bucket chromium-android-tools/checkstyle -s src/third_party/checkstyle/checkstyle-8.0-all.jar.sha1' in '/tmp/cr-build'
0> File src/third_party/checkstyle/checkstyle-8.0-all.jar exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.015989 second(s)
From https://chromium.googlesource.com/chromium/src
 * branch            master     -> FETCH_HEAD
Already up-to-date.
Running as non-root user.
You might have to enter your password one or more times for 'sudo'.

This script installs all tools and libraries needed to build Chromium.

For most of the libraries, it can also install debugging symbols, which
will allow you to debug code in the system libraries. Most developers
won't need these symbols.
Do you want me to install them for you (y/N) N
Skipping debugging symbols.
Including 32-bit libraries for ARM/Android.
Including ARM cross toolchain.
Including NaCl, NaCl toolchain, NaCl ports dependencies.
Get:1 http://security.ubuntu.com/ubuntu xenial-security InRelease [102 kB]
Hit:2 http://archive.ubuntu.com/ubuntu xenial InRelease
Get:3 http://archive.ubuntu.com/ubuntu xenial-updates InRelease [102 kB]
Fetched 204 kB in 1s (178 kB/s)
Reading package lists... Done
Finding missing packages...
Packages required:  libasound2:i386 libcap2:i386 libdconf1:i386 libelf-dev:i386 libfontconfig1:i386 libgconf-2-4:i386 libgl1-mesa-glx:i386 libglib2.0-0:i386 libgpm2:i386 libgtk2.0-0:i386 libgtk-3-0:i386 libncurses5:i386 libnss3:i386 libpango1.0-0:i386 libpci3:i386 libssl1.0.0:i386 libssl-dev:i386 libtinfo-dev:i386 libudev1:i386 libxcomposite1:i386 libxcursor1:i
386 libxdamage1:i386 libxi6:i386 libxrandr2:i386 libxss1:i386 libxtst6:i386 linux-libc-dev:i386 ant apache2-bin appmenu-gtk autoconf binutils-aarch64-linux-gnu bison cdbs cmake curl devscripts dpkg-dev elfutils fakeroot flex fonts-indic fonts-ipafont fonts-thai-tlwg g++ g++-5-multilib g++-5-multilib-arm-linux-gnueabihf g++-arm-linux-gnueabihf gawk gcc-5-multili
b-arm-linux-gnueabihf gcc-arm-linux-gnueabihf git-core git-svn g++-mingw-w64-i686 gperf intltool lib32gcc1 lib32ncurses5-dev lib32stdc++6 lib32z1-dev libapache2-mod-php7.0 libasound2 libasound2-dev libatk1.0-0 libav-tools libbluetooth-dev libbrlapi0.6 libbrlapi-dev libbz2-1.0 libbz2-dev libc6 libc6-dev-armhf-cross libc6-i386 libcairo2 libcairo2-dev libcap2 libc
ap-dev libcups2 libcups2-dev libcurl4-gnutls-dev libdconf1 libdconf-dev libdrm-dev libelf-dev libexpat1 libffi6 libffi-dev libfontconfig1 libfreetype6 libgbm-dev libgconf2-dev libgl1-mesa-dev libgles2-mesa-dev libglib2.0-0 libglib2.0-dev libglu1-mesa-dev libgnome-keyring0 libgnome-keyring-dev libgtk2.0-0 libgtk2.0-dev libgtk-3-0 libgtk-3-dev libjpeg-dev libkrb5
-dev libnspr4 libnspr4-dev libnss3 libnss3-dev libpam0g libpam0g-dev libpango1.0-0 libpci3 libpci-dev libpcre3 libpixman-1-0 libpng12-0 libpulse0 libpulse-dev libsctp-dev libspeechd2 libspeechd-dev libsqlite3-0 libsqlite3-dev libssl-dev libstdc++6 libtinfo-dev libtool libudev1 libudev-dev libwww-perl libx11-6 libx11-xcb1 libxau6 libxcb1 libxcomposite1 libxcurso
r1 libxdamage1 libxdmcp6 libxext6 libxfixes3 libxi6 libxinerama1 libxkbcommon-dev libxrandr2 libxrender1 libxslt1-dev libxss-dev libxt-dev libxtst6 libxtst-dev linux-libc-dev-armhf-cross locales mesa-common-dev openbox patch perl php7.0-cgi pkg-config python python-cherrypy3 python-crypto python-dev python-numpy python-opencv python-openssl python-psutil python
-yaml realpath rpm ruby subversion texinfo ttf-dejavu-core ttf-mscorefonts-installer wdiff x11-utils xcompmgr xsltproc xutils-dev xvfb zip zlib1g

No missing packages, and the packages are up to date.


Installing Chrome OS fonts.
Chrome OS fonts already up to date in /usr/local/share/fonts/chromeos.
Installing locales.
Locales already up-to-date.
________ running '/usr/bin/python src/build/landmines.py' in '/tmp/cr-build'
________ running '/usr/bin/python src/third_party/depot_tools/update_depot_tools_toggle.py --disable' in '/tmp/cr-build'
________ running '/usr/bin/python src/tools/remove_stale_pyc_files.py src/android_webview/tools src/build/android src/gpu/gles2_conform_support src/infra src/ppapi src/printing src/third_party/catapult src/third_party/closure_compiler/build src/third_party/WebKit/Tools/Scripts src/tools' in '/tmp/cr-build'
________ running '/usr/bin/python src/build/download_nacl_toolchains.py --mode nacl_core_sdk sync --extract' in '/tmp/cr-build'
________ running '/usr/bin/python src/build/linux/sysroot_scripts/install-sysroot.py --running-as-hook' in '/tmp/cr-build'
Jessie amd64 sysroot image already up to date: /tmp/cr-build/src/build/linux/debian_jessie_amd64-sysroot
Jessie i386 sysroot image already up to date: /tmp/cr-build/src/build/linux/debian_jessie_i386-sysroot
________ running '/usr/bin/python src/build/vs_toolchain.py update' in '/tmp/cr-build'
________ running '/usr/bin/python src/third_party/binutils/download.py' in '/tmp/cr-build'
________ running '/usr/bin/python src/tools/clang/scripts/update.py' in '/tmp/cr-build'
Updating Clang to 313786-1...
Clang is already up to date.
________ running '/usr/bin/python src/build/util/lastchange.py -o src/build/util/LASTCHANGE' in '/tmp/cr-build'
________ running '/usr/bin/python src/build/util/lastchange.py -m SKIA_COMMIT_HASH -s src/third_party/skia --header src/skia/ext/skia_commit_hash.h' in '/tmp/cr-build'
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --platform=linux* --no_auth --bucket chromium-gn -s src/buildtools/linux64/gn.sha1' in '/tmp/cr-build'
0> File src/buildtools/linux64/gn exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.007706 second(s)
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --platform=linux* --no_auth --bucket chromium-clang-format -s src/buildtools/linux64/clang-format.sha1' in '/tmp/cr-build'
0> File src/buildtools/linux64/clang-format exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.006123 second(s)
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --platform=linux* --no_auth --bucket chromium-luci -d src/tools/luci-go/linux64' in '/tmp/cr-build'
0> File src/tools/luci-go/linux64/isolate exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.028440 second(s)
________ running '/usr/bin/python src/third_party/instrumented_libraries/scripts/download_binaries.py' in '/tmp/cr-build'
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --no_auth -u --bucket v8-wasm-fuzzer -s src/v8/test/fuzzer/wasm_corpus.tar.gz.sha1' in '/tmp/cr-build'
0> File src/v8/test/fuzzer/wasm_corpus.tar.gz exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.004041 second(s)
________ running '/usr/bin/python src/third_party/WebKit/Source/devtools/scripts/local_node/node.py --running-as-hook --version' in '/tmp/cr-build'
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --platform=linux* --extract --no_auth --bucket chromium-nodejs/6.9.4 -s src/third_party/node/linux/node-linux-x64.tar.gz.sha1' in '/tmp/cr-build'
0> File src/third_party/node/linux/node-linux-x64.tar.gz exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.036345 second(s)
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --extract --no_auth --bucket chromium-nodejs -s src/third_party/node/node_modules.tar.gz.sha1' in '/tmp/cr-build'
0> File src/third_party/node/node_modules.tar.gz exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.015109 second(s)
________ running '/usr/bin/python src/tools/perf/conditionally_execute --gyp-condition fetch_telemetry_dependencies=1 src/third_party/catapult/telemetry/bin/fetch_telemetry_binary_dependencies' in '/tmp/cr-build'
Not found "fetch_telemetry_dependencies=1" condition in GYP_DEFINES="[]". Skip script execution.
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --platform=linux* --no_auth --num_threads=4 --bucket chromium-tools-traffic_annotation -d src/tools/traffic_annotation/bin/linux64' in '/tmp/cr-build'
1> File src/tools/traffic_annotation/bin/linux64/traffic_annotation_auditor exists and SHA1 matches. Skipping.
0> File src/tools/traffic_annotation/bin/linux64/traffic_annotation_extractor exists and SHA1 matches. Skipping.
Success!
Downloading 2 files took 0.048894 second(s)
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --no_auth --num_threads=4 --bucket chromium-binary-patching -d src/chrome/installer/zucchini/testdata' in '/tmp/cr-build'
1> File src/chrome/installer/zucchini/testdata/chrome64_1.exe exists and SHA1 matches. Skipping.
2> File src/chrome/installer/zucchini/testdata/setup2.exe exists and SHA1 matches. Skipping.
3> File src/chrome/installer/zucchini/testdata/setup1.exe exists and SHA1 matches. Skipping.
0> File src/chrome/installer/zucchini/testdata/chrome64_2.exe exists and SHA1 matches. Skipping.
Success!
Downloading 4 files took 0.009830 second(s)
________ running '/usr/bin/python src/third_party/depot_tools/download_from_google_storage.py --no_resume --no_auth --bucket chromium-android-tools/checkstyle -s src/third_party/checkstyle/checkstyle-8.0-all.jar.sha1' in '/tmp/cr-build'
0> File src/third_party/checkstyle/checkstyle-8.0-all.jar exists and SHA1 matches. Skipping.
Success!
Downloading 1 files took 0.018571 second(s)
Done. Made 6459 targets from 1342 files in 14967ms
ninja: Entering directory `out/Headless'
[2315/9438] ACTION //third_party/icu:make_data_assembly(//build/toolchain/linux:clang_x64)
Generated gen/third_party/icu/icudtl_dat.S
[8860/9438] CXX obj/headless/headless/headless_browser_impl_aura.o
FAILED: obj/headless/headless/headless_browser_impl_aura.o
../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/headless/headless/headless_browser_impl_aura.o.d -DV8_DEPRECATION_WARNINGS -DUSE_AURA=1 -DUSE_NSS_CERTS=1 -DUSE_OZONE=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DCR_CLANG_REVISION=\"313786-1\" -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DHEADLESS_IMPLEMENTATION -DHEADLESS_USE_EMBEDDED_RESOURCES -DUSE_EGL -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSK_HAS_PNG_LIBRARY -DSK_HAS_WEBP_LIBRARY -DSK_HAS_JPEG_LIBRARY -DSK_SUPPORT_GPU=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DU_STATIC_IMPLEMENTATION -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC -DUCHAR_TYPE=uint16_t -DLEVELDB_PLATFORM_CHROMIUM=1 -DMESA_EGL_NO_X11_HEADERS -I../.. -Igen -I../../third_party/libwebp/src -I../../third_party/khronos -I../../gpu -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -I../../third_party/boringssl/src/include -I../../build/linux/debian_jessie_amd64-sysroot/usr/include/nss -I../../build/linux/debian_jessie_amd64-sysroot/usr/include/nspr -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/encode -I../../third_party/skia/include/gpu -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/third_party/vulkan -I../../third_party/skia/include/codec -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/ced/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -I../../third_party/leveldatabase -I../../third_party/leveldatabase/src -I../../third_party/leveldatabase/src/include -I../../third_party/libwebm/source -Igen -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Igen/v8/include -I../../third_party/mesa/src/include -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -pthread -fcolor-diagnostics -Xclang -mllvm -Xclang -instcombine-lower-dbg-declare=1 -no-canonical-prefixes -m64 -march=x86-64 -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-unused-lambda-capture -Wno-user-defined-warnings -Wno-enum-compare-switch -Wno-tautological-unsigned-zero-compare -Wno-null-pointer-arithmetic -Wno-tautological-unsigned-enum-zero-compare -O2 -fno-ident -fdata-sections -ffunction-sections -fomit-frame-pointer -g0 -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-auto-raw-pointer -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wno-header-guard -std=gnu++14 -fno-rtti -nostdinc++ -isystem../../buildtools/third_party/libc++/trunk/include -isystem../../buildtools/third_party/libc++abi/trunk/include --sysroot=../../build/linux/debian_jessie_amd64-sysroot -fno-exceptions -fvisibility-inlines-hidden -c ../../headless/lib/browser/headless_browser_impl_aura.cc -o obj/headless/headless/headless_browser_impl_aura.o
In file included from ../../headless/lib/browser/headless_browser_impl_aura.cc:5:
In file included from ../../headless/lib/browser/headless_browser_impl.h:18:
../../headless/lib/browser/headless_devtools_manager_delegate.h:16:10: fatal error: 'printing/features/features.h' file not found
#include "printing/features/features.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
[8863/9438] CXX obj/headless/headless/headless_browser_context_impl.o
FAILED: obj/headless/headless/headless_browser_context_impl.o
../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/headless/headless/headless_browser_context_impl.o.d -DV8_DEPRECATION_WARNINGS -DUSE_AURA=1 -DUSE_NSS_CERTS=1 -DUSE_OZONE=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DCR_CLANG_REVISION=\"313786-1\" -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DHEADLESS_IMPLEMENTATION -DHEADLESS_USE_EMBEDDED_RESOURCES -DUSE_EGL -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSK_HAS_PNG_LIBRARY -DSK_HAS_WEBP_LIBRARY -DSK_HAS_JPEG_LIBRARY -DSK_SUPPORT_GPU=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DU_STATIC_IMPLEMENTATION -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC -DUCHAR_TYPE=uint16_t -DLEVELDB_PLATFORM_CHROMIUM=1 -DMESA_EGL_NO_X11_HEADERS -I../.. -Igen -I../../third_party/libwebp/src -I../../third_party/khronos -I../../gpu -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -I../../third_party/boringssl/src/include -I../../build/linux/debian_jessie_amd64-sysroot/usr/include/nss -I../../build/linux/debian_jessie_amd64-sysroot/usr/include/nspr -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/encode -I../../third_party/skia/include/gpu -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/third_party/vulkan -I../../third_party/skia/include/codec -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/ced/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -I../../third_party/leveldatabase -I../../third_party/leveldatabase/src -I../../third_party/leveldatabase/src/include -I../../third_party/libwebm/source -Igen -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Igen/v8/include -I../../third_party/mesa/src/include -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -pthread -fcolor-diagnostics -Xclang -mllvm -Xclang -instcombine-lower-dbg-declare=1 -no-canonical-prefixes -m64 -march=x86-64 -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-unused-lambda-capture -Wno-user-defined-warnings -Wno-enum-compare-switch -Wno-tautological-unsigned-zero-compare -Wno-null-pointer-arithmetic -Wno-tautological-unsigned-enum-zero-compare -O2 -fno-ident -fdata-sections -ffunction-sections -fomit-frame-pointer -g0 -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-auto-raw-pointer -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wno-header-guard -std=gnu++14 -fno-rtti -nostdinc++ -isystem../../buildtools/third_party/libc++/trunk/include -isystem../../buildtools/third_party/libc++abi/trunk/include --sysroot=../../build/linux/debian_jessie_amd64-sysroot -fno-exceptions -fvisibility-inlines-hidden -c ../../headless/lib/browser/headless_browser_context_impl.cc -o obj/headless/headless/headless_browser_context_impl.o
In file included from ../../headless/lib/browser/headless_browser_context_impl.cc:5:
In file included from ../../headless/lib/browser/headless_browser_context_impl.h:15:
../../content/public/browser/content_browser_client.h:30:10: fatal error: 'media/mojo/interfaces/remoting.mojom.h' file not found
#include "media/mojo/interfaces/remoting.mojom.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
[8873/9438] CXX obj/headless/headless/types_network.o
ninja: build stopped: subcommand failed.


Fails.
Apologies, I meant compiling headless_shell with my proposed args. 

or build headless target with these ones:

import("//build/args/headless.gn")
is_debug = false
symbol_level = 0
is_component_build = true

Comment 16 by lem...@gmail.com, Oct 10 2017

Compiled:

durr@cr-build:/tmp/cr-build/src/out/Headless$ cat args.gn
import("//build/args/headless.gn")
is_debug = false
symbol_level = 0
is_component_build = true

succeeds. It seems to compile a LOT more files (~20K, rather then ~10K for is_component_build = false).

It also doesn't seem to result in a headless_shell binary. The linker seems to exit with `[59/59] SOLINK ./libheadless.so`, and while I can find that shared object, I don't see the actual binary. Is there some other way to execute the result of a "component build"?
~20K sources sounds about right for libheadless. I'm not entirely sure why you wouldn't get the headless binary though.

To clarify. 
--- For headless component/library --
generates: out/Headless/libheadless.so
command: ninja -C out/Headless headless
args:
 import("//build/args/headless.gn")
 is_debug = false
 symbol_level = 0
 is_component_build = true

--- For headless_shell binary --
generates: out/Headless/headless_shell
command: ninja -C out/Headless headless_shell
args:
 import("//build/args/headless.gn")
 is_debug = false
 symbol_level = 0
 is_component_build = true/false



Comment 18 by lem...@gmail.com, Oct 10 2017

Arrrgh, at some point, my script got switched to "headless", rather then "headless_shell". Running the proper arguments yields the expected binary for the component build. Testing for a non component build now.  

What a major Derp on my part
Good to know!
I'll see if we can revise our tutorial though, it does look like we could explain better the differences between component and non component builds for headless. 

Comment 20 by lem...@gmail.com, Oct 11 2017

There's a tutorial?

Really, I dunno what could be done to make this more clear, aside from maybe "don't be a idiot". 

If the "headless" build is incompatible with "is_component_build = false", maybe the build should abort if they're both set?

Sign in to add a comment