-
Notifications
You must be signed in to change notification settings - Fork 2.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Linker command failure by building Brave for nVIDIA Jetson Nano #21363
Comments
So far I have discovered that Rust compiler generated code for the x86-64 instead of ARMv8-A. However I am struggling with the reconfiguration. Any hints? |
In the meantime, I have compiled gn according to rubyjs/libv8#261
real 0m12,170s |
Also, another try: `peter.kovar@JetsonNano:/usr/src/github.com/1div0/brave-browser/src/brave$ npm run build -- --target_os=linux --target_arch=arm64 --target=brave
touch original files overridden by chromium_src... /usr/src/github.com/1div0/brave-browser/src
|
@1div0 I see you managed to get a starting build, was there anything else you tried not captured here? |
Hi++ @mihaiplesa ! There were plenty of minor changes in order to crosscompile whole Cr and then Brave. It is running fairly well on nVIDIA Jetson Nano with 4 GB DRAM, albeit browser is using at least half of the available memory. However, I intend to restart the whole build effort for Orin modules with more DRAM. Cheers |
I've just tried to restart the crosscompilation for AArch64. However, it somehow fails because of missing Qt5. It used to be working half year ago.
Any hints? |
Modified the qt.gni as follows: declare_args() { Regenerated build scripts and waiting for compilation results. |
[11640/102620] ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/base/base/message_pump.o.d -DBASE_IMPLEMENTATION -DUSE_SYMBOLIZE -DDCHECK_ALWAYS_ON=1 -DUSE_UDEV -DUSE_AURA=1 -DUSE_GLIB=1 -DUSE_OZONE=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DCR_CLANG_REVISION="llvmorg-16-init-7184-gdeb82d4a-1" -DCOMPONENT_BUILD -DCR_LIBCXX_REVISION=888eff8ec2bc534f13d17254089d93f73220d81f -DCR_SYSROOT_KEY=20220331T153654Z-0 -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_40 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_40 -DABSL_CONSUME_DLL -DBORINGSSL_SHARED_LIBRARY -DGLOG_EXPORT= -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DUSE_CHROMIUM_ICU=1 -DU_ENABLE_TRACING=1 -DU_ENABLE_RESOURCE_TRACING=0 -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -I../.. -Igen -I../../buildtools/third_party/libc++ -I../../third_party/perfetto/include -Igen/third_party/perfetto/build_config -Igen/third_party/perfetto -I../../third_party/abseil-cpp -I../../third_party/boringssl/src/include -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -Wall -Werror -Wextra -Wimplicit-fallthrough -Wextra-semi -Wunreachable-code-aggressive -Wthread-safety -Wno-missing-field-initializers -Wno-unused-parameter -Wno-psabi -Wloop-analysis -Wno-unneeded-internal-declaration -Wenum-compare-conditional -Wno-ignored-pragma-optimize -Wno-deprecated-builtins -Wno-bitfield-constant-conversion -Wshadow -fno-delete-null-pointer-checks -fno-ident -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC -pthread -fcolor-diagnostics -fmerge-all-constants -fcrash-diagnostics-dir=../../tools/clang/crashreports -mllvm -instcombine-lower-dbg-declare=0 -ffp-contract=off -fcomplete-member-pointers -mbranch-protection=standard --target=aarch64-linux-gnu -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -ffile-compilation-dir=. -no-canonical-prefixes -ftrivial-auto-var-init=pattern -O0 -fno-omit-frame-pointer -gdwarf-4 -g2 -gdwarf-aranges -gsplit-dwarf -ggnu-pubnames -Xclang -fuse-ctor-homing -fvisibility=hidden -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang raw-ref-template-as-trivial-member -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wshorten-64-to-32 -Wimplicit-int-conversion -Wsign-compare -Wsign-conversion -Wtautological-unsigned-zero-compare -Wexit-time-destructors -Wglobal-constructors -isystem../../build/linux/debian_bullseye_arm64-sysroot/usr/include/glib-2.0 -isystem../../build/linux/debian_bullseye_arm64-sysroot/usr/lib64/glib-2.0/include -isystem../../build/linux/debian_bullseye_arm64-sysroot/usr/include/sysprof-4 -DPROTOBUF_ALLOW_DEPRECATED=1 -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -std=c++20 -Wno-trigraphs -fno-exceptions -fno-rtti -nostdinc++ -isystem../../buildtools/third_party/libc++/trunk/include -isystem../../buildtools/third_party/libc++abi/trunk/include --sysroot=../../build/linux/debian_bullseye_arm64-sysroot -fvisibility-inlines-hidden -c ../../base/message_loop/message_pump.cc -o obj/base/base/message_pump.o |
Added soft link: src/build/linux/debian_bullseye_arm64-sysroot/usr/include |
Also: src/build/linux/debian_bullseye_arm64-sysroot/usr/include/dbus-1.0/dbus |
@1div0 we launched Linux arm64 a few weeks ago, are you still seeing issues? |
Thank you so much for Linux AArch64 port. So far I have 10 days uptime with latest Brave. Almost perfect with memory saving option for inactive tabs. Only problem detected with Widevine so far. I will dig deeper and report. |
Widevine for Linux arm64 is tracked in #28903 so closing this. |
`€ yarn --verbose run build --target_os=linux --target_arch=arm64 --target=brave
yarn run v1.12.3
...
$ cd src/brave && npm run build -- --target_os=linux --target_arch=arm64 --target=brave
Compiling brave-rust v0.1.0 (/run/media/peter.kovar/8TB/usr/src/github.com/1div0/brave-browser/src/brave/build/rust)
Finished dev [unoptimized + debuginfo] target(s) in 2m 24s
[73/74] LINK ./chrome
FAILED: chrome
python3 "../../build/toolchain/gcc_link_wrapper.py" --output="./chrome" -- ../../third_party/llvm-build/Release+Asserts/bin/clang++ -fuse-ld=lld -Wl,--fatal-warnings -Wl,--build-id -fPIC -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,max-page-size=4096 -Wl,--icf=all -Wl,--color-diagnostics -Wl,--no-call-graph-profile-sort --target=aarch64-linux-gnu -no-canonical-prefixes -Werror -Wl,-O2 -Wl,--gc-sections -rdynamic -nostdlib++ --sysroot=../../build/linux/ubuntu_bionic_arm64-sysroot -Wl,-z,defs -Wl,--as-needed -pie -Wl,--disable-new-dtags -Wl,-rpath=$ORIGIN -o "./chrome" -Wl,--start-group @"./chrome.rsp" ./libbase.so ./libabsl.so ./libboringssl.so ./libperfetto.so ./libbindings.so ./libbindings_base.so ./libmojo_public_system_cpp.so ./libmojo_public_system.so ./libmojo_cpp_platform.so ./libprotobuf_lite.so ./libmessage_support.so ./libmojo_mojom_bindings.so ./libmojo_mojom_bindings_shared.so ./liburl_mojom_traits.so ./libmojo_base_mojom_shared.so ./liburl.so ./libmojo_base_shared_typemap_traits.so ./libmojo_base_lib.so ./libbase_i18n.so ./libicui18n.so ./libicuuc.so ./libui_base.so ./libui_base_features.so ./libui_data_pack.so ./libskia.so ./libgfx.so ./libcolor_space.so ./libcolor_utils.so ./libgeometry.so ./libgfx_skia.so ./libgfx_switches.so ./libanimation.so ./libcodec.so ./libgeometry_skia.so ./librange.so ./libcc_paint.so ./libcc_base.so ./libcc_debug.so ./libui_base_file_info.so ./libevents_base.so ./libplatform.so ./libkeycodes_x11.so ./libcontent_public_common_mojo_bindings_shared.so ./libmojom_platform_shared.so ./libandroid_mojo_bindings_shared.so ./libauthenticator_test_mojo_bindings_shared.so ./libcolor_scheme_mojo_bindings_shared.so ./libmojom_mhtml_load_result_shared.so ./libscript_type_mojom_shared.so ./libweb_feature_mojo_bindings_mojom_shared.so ./libgpu_common_interfaces_shared.so ./libvulkan_interface_shared.so ./libservice_manager_mojom_shared.so ./libservice_manager_mojom_constants_shared.so ./libblink_gpu_mojom_shared.so ./libservice_worker_storage_mojom_shared.so ./libtokens_mojom_shared.so ./libusb_shared.so ./libui_base_dragdrop_mojom_shared.so ./libmojo_base_mojom.so ./libmojo_base_typemap_traits.so ./libcontent_settings_features.so ./libipc.so ./libipc_mojom.so ./libipc_mojom_shared.so ./libtracing_cpp.so ./libstartup_tracing.so ./libtracing_mojom.so ./libtracing_mojom_shared.so ./libnet.so ./libcrcrypto.so ./libcookies_mojom_support.so ./libskia_shared_typemap_traits.so ./libcontent.so ./libgpu.so ./libmailbox.so ./libcrash_key_lib.so ./libchrome_zlib.so ./libvulkan_info.so ./libgfx_native_types_shared_mojom_traits.so ./libgfx_shared_mojom_traits.so ./libgl_wrapper.so ./libgfx_ipc.so ./libgfx_ipc_geometry.so ./libvulkan_ycbcr_info.so ./libgpu_channel_mojom_shared.so ./liburl_ipc.so ./libviz_common.so ./libviz_resource_format_utils.so ./libviz_vulkan_context_provider.so ./libdisplay.so ./libdisplay_types.so ./libmedia.so ./libshared_memory_support.so ./libleveldb_proto.so ./libkeyed_service_core.so ./libleveldatabase.so ./liblearning_common.so ./libmedia_learning_shared_typemap_traits.so ./libmedia_session_base_cpp.so ./libip_address_mojom_support.so ./libnetwork_param_mojom_support.so ./libproxy_config_mojom_support.so ./libwebrtc_component.so ./libcross_origin_embedder_policy.so ./libnetwork_cpp_base.so ./libcrash_keys.so ./libschemeful_site_mojom_support.so ./libservice_manager_mojom.so ./libservice_manager_mojom_constants.so ./libservice_manager_cpp_types.so ./libservice_manager_mojom_traits.so ./libgfx_ipc_color.so ./libgfx_ipc_buffer_types.so ./libgfx_ipc_skia.so ./libservice_manager_cpp.so ./libmetrics_cpp.so ./libui_base_clipboard_types.so ./libevents.so ./libui_base_data_transfer_policy.so ./libcc.so ./libvideo_capture_mojom_support.so ./libcapture_base.so ./liblatency_shared_mojom_traits.so ./libprediction.so ./libblink_common.so ./libprivacy_budget.so ./libnetwork_cpp.so ./libbrave_network_cpp.so ./libweb_feature_mojo_bindings_mojom.so ./libui_base_clipboard.so ./libdisplay_shared_mojom_traits.so ./libmojom_modules_shared.so ./libmojom_core_shared.so ./libfido.so ./libbluetooth.so ./libscript_type_mojom.so ./libcc_ipc.so ./libcc_shared_mojom_traits.so ./libblink_gpu_mojom.so ./libservice_worker_storage_mojom.so ./libtokens_traits.so ./libui_base_cursor_base.so ./libui_base_dragdrop_mojom.so ./libime_shared_mojom_traits.so ./libui_base_ime_types.so ./libui_events_ipc.so ./libweb_bluetooth_mojo_bindings_shared.so ./libax_base.so ./libui_accessibility_ax_mojom.so ./libui_accessibility_ax_mojom_shared.so ./libui_base_ime.so ./libcontent_common_mojo_bindings_shared.so ./libaccessibility.so ./libaura.so ./libui_base_dragdrop_types.so ./libmetadata.so ./libcompositor.so ./libblink_features.so ./libsurface.so ./libpolicy.so ./libnetwork_service.so ./libmemory_instrumentation.so ./libresource_coordinator_public_mojom.so ./libresource_coordinator_public_mojom_shared.so ./libstorage_common.so ./libpublic.so ./libinterfaces_shared.so ./libstorage_service_filesystem_mojom_shared.so ./libstorage_service_buckets_support.so ./libstorage_service_filesystem_mojom.so ./libstorage_service_typemap_traits.so ./libmedia_session_cpp.so ./libstorage_browser.so ./libchrome_features.so ./libprefs.so ./libvariations.so ./libvariations_features.so ./libextensions.so ./liburl_matcher.so ./libcapture_lib.so ./libcapture_switches.so ./libcommon.so ./libnetwork_session_configurator.so ./libsql.so ./libchromium_sqlite3.so ./libwebdata_common.so ./libos_crypt.so ./libomnibox_http_headers.so ./libcloud_policy_proto_generated_compile.so ./libpolicy_component.so ./libpolicy_proto.so ./libgcm.so ./libnative_theme.so ./libservice_provider.so ./libautofill_core_common_features.so ./libui_message_center_cpp.so ./libppapi_shared.so ./libprinting.so ./libmetafile.so ./libprinting_base.so ./libprinting_backend.so ./libmedia_webrtc.so ./libwtf.so ./libv8_libbase.so ./libv8_libplatform.so ./libsandbox_services.so ./libsuid_sandbox_client.so ./libseccomp_bpf.so ./libsecurity_state_features.so ./libec_commutative_cipher.so ./libkeyed_service_content.so ./libstorage_service_public.so ./libstorage_service_filesystem_support.so ./libuser_prefs.so ./libperformance_manager_public_mojom.so ./libperformance_manager_public_mojom_shared.so ./libsessions.so ./libpermissions_common.so ./libgeolocation_service.so ./libextras.so ./libcaptive_portal_core.so ./libdevice_features.so ./libweb_modal.so ./libonc.so ./libdevice_event_log.so ./libshell_dialogs.so ./libui_base_idle.so ./libdbus.so ./libAPP_UPDATE.so ./libAPP_TYPES.so ./libuser_manager.so ./libdevices.so ./libviews.so ./libui_base_ime_init.so ./libui_base_cursor_theme_manager.so ./libui_aura_cursor.so ./libhost.so ./libukm_recorder.so ./libcrdtp.so ./libdiscardable_memory_service.so ./libcbor.so ./libproxy_config.so ./libtab_groups.so ./libmessage_center.so ./libozone.so ./libozone_base.so ./libdisplay_util.so ./libvulkan_wrapper.so ./libdata_exchange.so ./libplatform_window.so ./libfontconfig.so ./libui_touch_selection.so ./libffmpeg.so ./libsnapshot.so ./libwebview.so ./libdomain_reliability.so ./liblookalikes_features.so ./libui_devtools.so ./libgesture_detection.so ./libweb_dialogs.so ./libmojo_core_embedder.so ./libwm.so ./libICON_TYPES.so ./libui_base_ime_linux.so ./libfreetype_harfbuzz.so ./libmenu.so ./libproperties.so ./libthread_linux.so ./libgfx_x11.so ./libgtk.so ./libbrowser_ui_views.so ./libglobal_media_controls.so ./libmedia_message_center.so ./libsoda.so ./libtab_count_metrics.so ./libwm_public.so ./libppapi_proxy.so ./libcolor.so ./libmixers.so ./libcertificate_matching.so ./libcertificate_transparency.so ./libmirroring_service.so ./libdevice_base.so ./libswitches.so ./libmidi.so ./libmedia_mojo_services.so ./libmedia_gpu.so ./libgles2_utils.so ./libgles2.so ./libgpu_ipc_service.so ./libgl_init.so ./libstable_video_decoder_shared.so ./libmojo_core_embedder_features.so ./libcert_net_url_loader.so ./liberror_reporting.so ./libevents_ozone.so ./libui_base_x.so ./libppapi_host.so ./libpower_scheduler.so ./libgwp_asan_client.so ./libgin.so ./libv8.so ./libblink_controller.so ./libblink_core.so ./libblink_mojom_broadcastchannel_bindings_shared.so ./libwtf_support.so ./libweb_feature_mojo_bindings_mojom_blink.so ./libmojo_base_mojom_blink.so ./libservice_manager_mojom_blink.so ./libservice_manager_mojom_constants_blink.so ./libui_base_dragdrop_mojom_blink.so ./libblink_platform.so ./libcc_animation.so ./libresource_coordinator_public_mojom_blink.so ./libkeyframe.so ./libblink_embedded_frame_sink_mojo_bindings_shared.so ./libperformance_manager_public_mojom_blink.so ./libui_accessibility_ax_mojom_blink.so ./libblink_modules.so ./libshared_with_blink.so ./libgamepad_mojom_blink.so ./libgamepad_mojom_shared.so ./libgamepad_shared_typemap_traits.so ./liburlpattern.so ./libdevice_vr_service_mojo_bindings_blink.so ./libdevice_vr_service_mojo_bindings_shared.so ./libdevice_vr_test_mojo_bindings_shared.so ./libdevice_vr_test_mojo_bindings_blink.so ./libdevice_vr_public_typemaps.so ./libpdfium.so ./libdiscardable_memory_client.so ./libheadless_non_renderer.so ./libc++.so -Wl,--end-group -ldl -lpthread -lrt -lgmodule-2.0 -lglib-2.0 -lgobject-2.0 -lgthread-2.0 -lsmime3 -lnss3 -lnssutil3 -lplds4 -lplc4 -lnspr4 -latk-1.0 -latk-bridge-2.0 -lcups -lgio-2.0 -ldbus-1 brave_rust/out/arm64/debug/libbrave_rust.a
ld.lld: error: brave_rust/out/arm64/debug/libbrave_rust.a(bls_cxx-b9bdecf50a6b0c09.25d574nm6dw6qbsm.rcgu.o) is incompatible with elf64-littleaarch64
ld.lld: error: brave_rust/out/arm64/debug/libbrave_rust.a(brave_wallet_cxx-9922beafd7e392b8.115o6rzpzmhquhju.rcgu.o) is incompatible with elf64-littleaarch64
ld.lld: error: brave_rust/out/arm64/debug/libbrave_rust.a(brave_news_cxx-ed35c16a7d4247e2.3d1mtdk124varpqm.rcgu.o) is incompatible with elf64-littleaarch64
ld.lld: error: brave_rust/out/arm64/debug/libbrave_rust.a(skus_cxx-3ffa9e6c8da62e9a.50hrwoj07cuc06k7.rcgu.o) is incompatible with elf64-littleaarch64
ld.lld: error: brave_rust/out/arm64/debug/libbrave_rust.a(cxx-b6a7a7e59608f9ca.2rlcdnwm0mkrquwy.rcgu.o) is incompatible with elf64-littleaarch64
ld.lld: error: brave_rust/out/arm64/debug/libbrave_rust.a(cxx-b6a7a7e59608f9ca.2zmfm3zp9yz9r9n7.rcgu.o) is incompatible with elf64-littleaarch64
ld.lld: error: brave_rust/out/arm64/debug/libbrave_rust.a(cxx-b6a7a7e59608f9ca.30qijxtj3gwjppt6.rcgu.o) is incompatible with elf64-littleaarch64
ld.lld: error: brave_rust/out/arm64/debug/libbrave_rust.a(cxx-b6a7a7e59608f9ca.3luubisoosxpcs95.rcgu.o) is incompatible with elf64-littleaarch64
ld.lld: error: brave_rust/out/arm64/debug/libbrave_rust.a(speedreader_ffi-ce05a5f44aced2e1.1kogwq0jp6tcmcwi.rcgu.o) is incompatible with elf64-littleaarch64
ld.lld: error: brave_rust/out/arm64/debug/libbrave_rust.a(challenge_bypass_ristretto_ffi-4d3acd6ddf47c7d0.4bsfhenov9xgpscy.rcgu.o) is incompatible with elf64-littleaarch64
ld.lld: error: brave_rust/out/arm64/debug/libbrave_rust.a(adblock-651db72df6955587.5g3x6ai497m96ajh.rcgu.o) is incompatible with elf64-littleaarch64
ld.lld: error: brave_rust/out/arm64/debug/libbrave_rust.a(compiler_builtins-5667a4a7e2c48d47.compiler_builtins.ce2b8975-cgu.79.rcgu.o) is incompatible with elf64-littleaarch64
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.
null
null
verbose 156.262161049 Error: Command failed with exit code 1.
`
The text was updated successfully, but these errors were encountered: