Android arm64 compile failure |
|||||||
Issue descriptionLink to bot: https://build.chromium.org/p/chromium.perf/builders/Android%20arm64%20Compile This has been intermittently failing throughout the day (first failure was [1]). Chatted with aluo@, he says it fails consistently locally. [1] https://build.chromium.org/p/chromium.perf/builders/Android%20arm64%20Compile/builds/80536
,
Nov 28 2017
,
Nov 28 2017
Looking in the blamelist for the first failure, we reverted an SDK roll: c2aaefcc1991bd47671d8184a731ae4f960d534c Maybe stepping down the SDK confused the builder? Have you tried a clobber build?
,
Nov 28 2017
I'm trying a build. I can build system_webview_apk with no issue, trying some other targets.
,
Nov 28 2017
clobber didn't help. I also had android_sdk_release = "o_mr1", but removing it didn't help either.
,
Nov 28 2017
I can repro with `ninja chrome_public_apk` (GN args android_sdk_release at the default, "o_mr1")
,
Nov 28 2017
Oh, my checkout doesn't actually have search.mojom.h in it (which would explain the issue). Are you sure you actually get that file generated?
,
Nov 28 2017
you're right, I must have had it left over from a previous build. After clobbering the file is gone. chrome_public_apk fails for me too now after the clobber. So now the target //chrome/renderer:renderer is failing too. Commenting out the is_android check on line 399 of chrome/renderer/BUILD.gn fixed the build. So I think cl 790511 could be it. https://chromium-review.googlesource.com/790511
,
Nov 28 2017
reverting the cl fixed my build, should we just revert first, ntfschr@?
,
Nov 29 2017
Yup, that'd be mine. Weird that it made it through the CQ and all... The problem seems to be an unused include of search_bouncer.h from metrics_render_frame_observer.cc: search_bouncer.h in turn includes search.mojom.h which now isn't generated anymore on Android. I'll send a CL to remove that include.
,
Nov 29 2017
Since all the bots seem to be happy and no other developers have complained, I'm downgrading this to P1. (I'll still send a CL to fix soon.) Locally, I'm currently getting errors due to a bunch of other missing mojom files, which is super weird. Either the search.mojom stuff somehow transitively pulled those in, or something is seriously messed up with building all the mojo stuff.
,
Nov 29 2017
,
Nov 29 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c365e1fb592eb3e9d9b1dcc06dafad8de41f98f8 commit c365e1fb592eb3e9d9b1dcc06dafad8de41f98f8 Author: Marc Treib <treib@chromium.org> Date: Wed Nov 29 12:03:17 2017 Fix Android build failure due to missing search.mojom.h This fixes an intermittent build problem introduced by crrev.com/790511: metrics_render_frame_observer.cc included search_bouncer.h which in turn included search.mojom.h, which is now not generated on Android anymore. This CL removes that include, since it's unused anyway. It also moves chrome/common:search_mojom back into chrome/renderer's non-OS-specific deps, since it appears to be needed there for unknown reasons. TBRing since it's a trivial change, and this is causing active build pain. TBR=csharrison Bug: 787830 , 789270 , 789403 Change-Id: Ie49cb63b3ef23a3d76fc2cd1cddbc8faa4fa41f7 Reviewed-on: https://chromium-review.googlesource.com/795729 Reviewed-by: Marc Treib <treib@chromium.org> Commit-Queue: Marc Treib <treib@chromium.org> Cr-Commit-Position: refs/heads/master@{#520080} [modify] https://crrev.com/c365e1fb592eb3e9d9b1dcc06dafad8de41f98f8/chrome/renderer/BUILD.gn [modify] https://crrev.com/c365e1fb592eb3e9d9b1dcc06dafad8de41f98f8/chrome/renderer/page_load_metrics/metrics_render_frame_observer.cc
,
Nov 29 2017
That should do it.
,
Nov 29 2017
The official build failed 64.0.3280.0: https://uberchromegw.corp.google.com/i/official.android/builders/official-arm/builds/2665 Could you please cp the fix to 3280 branch asap? Thanks.
,
Nov 29 2017
Already done: https://chromium-review.googlesource.com/c/chromium/src/+/796750 :) |
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by aluo@chromium.org
, Nov 28 2017Locally, building chrome_public_apk works, but monochrome_public_apk gives: ninja: Entering directory `out-gn/Debug' [26/80] CXX android_clang_arm/obj/chrome/renderer/renderer/metrics_render_frame_observer.o FAILED: android_clang_arm/obj/chrome/renderer/renderer/metrics_render_frame_observer.o /usr/local/google/home/aluo/goma/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF android_clang_arm/obj/chrome/renderer/renderer/metrics_render_frame_observer.o.d -DV8_DEPRECATION_WARNINGS -DNO_TCMALLOC -DSAFE_BROWSING_DB_REMOTE -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -D_FILE_OFFSET_BITS=64 -DANDROID -DHAVE_SYS_UIO_H -DANDROID_NDK_VERSION_ROLL=r12b_1 -DCR_CLANG_REVISION=\"318667-1\" -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DCOMPONENT_BUILD -D__GNU_SOURCE=1 -DCHROMIUM_CXX_TWEAK_INLINES -D__compiler_offsetof=__builtin_offsetof -Dnan=__builtin_nan -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -DUSE_EGL -DDISABLE_FFMPEG_VIDEO_DECODERS -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -DUCHAR_TYPE=uint16_t -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DPROTOBUF_USE_DLLS -DV8_USE_EXTERNAL_STARTUP_DATA -DBORINGSSL_SHARED_LIBRARY -DLEVELDB_PLATFORM_CHROMIUM=1 -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSK_HAS_PNG_LIBRARY -DSK_HAS_WEBP_LIBRARY -DSK_HAS_JPEG_LIBRARY -DSKIA_DLL -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_SUPPORT_GPU=1 -DSK_BUILD_FOR_ANDROID -DUSE_CHROMIUM_SKIA -DMESA_EGL_NO_X11_HEADERS -DUSING_V8_SHARED -DV8_ENABLE_CHECKS -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -DWTF_USE_LOW_QUALITY_IMAGE_INTERPOLATION=1 -DWTF_USE_WEBAUDIO_OPENMAX_DL_FFT=1 -DUSING_V8_SHARED -DV8_ENABLE_CHECKS -I../.. -Iandroid_clang_arm/gen -I../../third_party/libwebp/src -I../../third_party/khronos -I../../gpu -I../../third_party/ced/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -I../../third_party/protobuf/src -I../../third_party/protobuf/src -Iandroid_clang_arm/gen/protoc_out -I../../third_party/boringssl/src/include -I../../third_party/leveldatabase -I../../third_party/leveldatabase/src -I../../third_party/leveldatabase/src/include -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/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/mesa/src/include -I../../third_party/libwebm/source -Iandroid_clang_arm/gen/media/base/android/media_jni_headers -Iandroid_clang_arm/gen/media/base/android/media_jni_headers/media -Iandroid_clang_arm/gen -I../../third_party/WebKit -Iandroid_clang_arm/gen/third_party/WebKit -I../../v8/include -Iandroid_clang_arm/gen/v8/include -I../../third_party/WebKit/Source -I../../third_party/WebKit -Iandroid_clang_arm/gen/blink -Iandroid_clang_arm/gen/third_party/WebKit -Iandroid_clang_arm/gen/third_party/metrics_proto -I../../third_party/re2/src -I../../v8/include -Iandroid_clang_arm/gen/v8/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 -fcolor-diagnostics -no-canonical-prefixes -ffunction-sections -fno-short-enums --target=arm-linux-androideabi -march=armv7-a -mfloat-abi=softfp -mtune=generic-armv7-a -mfpu=neon -mthumb -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-constant-compare -Wtautological-constant-out-of-range-compare -Oz -fno-ident -fdata-sections -ffunction-sections -fomit-frame-pointer -g1 -fdebug-info-for-profiling -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-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wexit-time-destructors -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libBlinkGCPlugin.so -Xclang -add-plugin -Xclang blink-gc-plugin -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -std=gnu++14 -fno-exceptions -fno-rtti -isystem../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include -isystem../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++abi/libcxxabi/include -isystem../../third_party/android_tools/ndk/sources/android/support/include --sysroot=../../third_party/android_tools/ndk/platforms/android-16/arch-arm -fvisibility-inlines-hidden -c ../../chrome/renderer/page_load_metrics/metrics_render_frame_observer.cc -o android_clang_arm/obj/chrome/renderer/renderer/metrics_render_frame_observer.o In file included from ../../chrome/renderer/page_load_metrics/metrics_render_frame_observer.cc:15: ../../chrome/renderer/searchbox/search_bouncer.h:9:10: fatal error: 'chrome/common/search.mojom.h' file not found #include "chrome/common/search.mojom.h" ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1 error generated. [28/80] ACTION //chrome/android:monochrome_java__lint(//build/toolchain/android:android_clang_arm64) ninja: build stopped: subcommand failed. But the file out-gn/Debug/gen/chrome/common/search.mojom.h was generated, so don't know why it failed. building for android on arm64 Changing pri to get this fixed asap.