"./mach bootstrap" with Firefox for Android fails with java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
Categories
(Firefox Build System :: Bootstrap Configuration, defect)
Tracking
(firefox66 fixed)
Tracking | Status | |
---|---|---|
firefox66 | --- | fixed |
People
(Reporter: ato, Assigned: nalexander)
References
(Blocks 2 open bugs)
Details
Attachments
(6 files)
Reporter | ||
Comment 1•6 years ago
|
||
Comment 2•6 years ago
|
||
Assignee | ||
Comment 3•6 years ago
|
||
Updated•6 years ago
|
Comment 4•6 years ago
|
||
Updated•6 years ago
|
Reporter | ||
Comment 5•6 years ago
|
||
Comment 6•6 years ago
|
||
Assignee | ||
Comment 8•6 years ago
|
||
Assignee | ||
Comment 9•6 years ago
|
||
Assignee | ||
Comment 10•6 years ago
|
||
Assignee | ||
Comment 11•6 years ago
|
||
Assignee | ||
Comment 12•6 years ago
|
||
Assignee | ||
Comment 13•6 years ago
|
||
Assignee | ||
Comment 14•6 years ago
|
||
paul: on your macOS device, could you:
- apply the patch stack from phab
- invoke
./mach bootstrap --no-interactive --application-choice mobile_android
- update your mozconfig as suggested, choosing a --target you care about
- invoke
./mach build && ./mach package
and report back to me? I expect that these changes, which make using a Mozilla-produced clang that "supported configuration", will address your segfaults -- but I'd definitely like confirmation. Thank you!
Comment 16•6 years ago
|
||
It worked for me also but ony when targeting arm-linux-androideabi
Otherwise when targeting
x86_64-linux-android
I get
0:09.40 checking whether the C compiler (/Users/petru.lingurar/.mozbuild/clang/bin/clang -std=gnu99 --target=arm-linux-androideabi -fno-short-enums -fno-exceptions -L/Users/petru.lingurar/.mozbuild/android-ndk-r17b/platforms/android-21/arch-x86_64/usr/lib -Wl,-rpath-link=/Users/petru.lingurar/.mozbuild/android-ndk-r17b/platforms/android-21/arch-x86_64/usr/lib --sysroot=/Users/petru.lingurar/.mozbuild/android-ndk-r17b/platforms/android-21/arch-x86_64 -Wl,--allow-shlib-undefined -gcc-toolchain /Users/petru.lingurar/.mozbuild/android-ndk-r17b/toolchains/x86_64-4.9/prebuilt/darwin-x86_64 -fuse-ld=lld) works... no
0:09.40 configure: error: installation or configuration problem: C compiler cannot create executables.
0:09.40 DEBUG: <truncated - see config.log for full output>
0:09.40 DEBUG: configure:1360: /Users/petru.lingurar/.mozbuild/clang/bin/clang -std=gnu99 --target=arm-linux-androideabi -o conftest -fno-short-enums -fno-exceptions -isystem /Users/petru.lingurar/.mozbuild/android-ndk-r17b/sysroot/usr/include/x86_64-linux-android -isystem /Users/petru.lingurar/.mozbuild/android-ndk-r17b/sysroot/usr/include -gcc-toolchain /Users/petru.lingurar/.mozbuild/android-ndk-r17b/toolchains/x86_64-4.9/prebuilt/darwin-x86_64 -D__ANDROID_API__=21 -L/Users/petru.lingurar/.mozbuild/android-ndk-r17b/platforms/android-21/arch-x86_64/usr/lib -Wl,-rpath-link=/Users/petru.lingurar/.mozbuild/android-ndk-r17b/platforms/android-21/arch-x86_64/usr/lib --sysroot=/Users/petru.lingurar/.mozbuild/android-ndk-r17b/platforms/android-21/arch-x86_64 -Wl,--allow-shlib-undefined -gcc-toolchain /Users/petru.lingurar/.mozbuild/android-ndk-r17b/toolchains/x86_64-4.9/prebuilt/darwin-x86_64 -fuse-ld=lld conftest.c 1>&5
0:09.40 DEBUG: configure:1357:1: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
0:09.40 DEBUG: main(){return(0);}
0:09.40 DEBUG: ^
0:09.40 DEBUG: 1 warning generated.
0:09.40 DEBUG: ld.lld: error: cannot open crtbegin_dynamic.o: No such file or directory
0:09.40 DEBUG: ld.lld: error: unable to find library -lgcc
0:09.40 DEBUG: ld.lld: error: unable to find library -ldl
0:09.40 DEBUG: ld.lld: error: unable to find library -lc
0:09.40 DEBUG: ld.lld: error: unable to find library -lgcc
0:09.40 DEBUG: ld.lld: error: unable to find library -ldl
0:09.40 DEBUG: ld.lld: error: cannot open crtend_android.o: No such file or directory
0:09.40 DEBUG: clang-7: error: linker command failed with exit code 1 (use -v to see invocation)
0:09.40 DEBUG: configure: failed program was:
0:09.40 DEBUG:
0:09.40 DEBUG: #line 1355 "configure"
0:09.40 DEBUG: #include "confdefs.h"
0:09.40 DEBUG:
0:09.40 DEBUG: main(){return(0);}
0:09.41 DEBUG: configure: error: installation or configuration problem: C compiler cannot create executables.
0:09.41 ERROR: old-configure failed
0:09.44 *** Fix above errors and then restart with "./mach build"
0:09.44 make: *** [configure] Error 1
i686-linux-android
or
aarch64-linux-android
gives mainly the same error but from ld.lld
just
0:09.91 DEBUG: ld.lld: error: unable to find library -lgcc
0:09.91 DEBUG: ld.lld: error: unable to find library -lgcc
Also when trying a robocop test I see
▶ ./mach robocop --serve
Error running mach:['robocop', '--serve']
The error occurred in code that was called by the mach command. This is either
a bug in the called code itself or in the way that mach is calling it.You should consider filing a bug for this issue.
If filing a bug, please include the full output of mach, including this error
message.The details of the failure are as follows:
ADBTimeoutError: args: /Users/petru.lingurar/.mozbuild/android-sdk-macosx/platform-tools/adb -s 2259f4e8480d7ece wait-for-device shell su 0 id; echo adb_returncode=$?, exitcode: None, stdout:
File "/Users/petru.lingurar/Projects/Clients/mozilla-unified/testing/mochitest/mach_commands.py", line 572, in run_robocop
device_serial=device_serial)
File "/Users/petru.lingurar/Projects/Clients/mozilla-unified/testing/mozbase/mozrunner/mozrunner/devices/android_device.py", line 237, in verify_android_device
device = _get_device(build_obj.substs, device_serial)
File "/Users/petru.lingurar/Projects/Clients/mozilla-unified/testing/mozbase/mozrunner/mozrunner/devices/android_device.py", line 101, in _get_device
device = ADBDevice(adb=adb_path, verbose=verbose_logging, device=device_serial)
File "/Users/petru.lingurar/Projects/Clients/mozilla-unified/testing/mozbase/mozdevice/mozdevice/adb.py", line 642, in init
self.shell_output("su 0 id", timeout=timeout).find(uid) != -1):
File "/Users/petru.lingurar/Projects/Clients/mozilla-unified/testing/mozbase/mozdevice/mozdevice/adb.py", line 1443, in shell_output
raise ADBTimeoutError("%s" % adb_process)
Don't really know if it's because of this patch or not. Tested on a real device. com.android.shell
was granted su.
For the ADBTimeout I see there's already a ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=1510059
Assignee | ||
Comment 17•6 years ago
|
||
Petru: the ADB issue is almost certainly unrelated.
The logs you post look very confused -- you say you're targeting x86_64-linux-android but the invocations look like /Users/petru.lingurar/.mozbuild/clang/bin/clang -std=gnu99 --target=arm-linux-androideabi ...
(i.e., regular ARM).
Can you ensure you have exactly one --target
line in your mozconfig, and then mach clobber
before trying again?
Thanks!
Assignee | ||
Updated•6 years ago
|
Comment 18•6 years ago
|
||
Thanks Nick.
Indeed i686-linux-android worked now and the robocop tests also (on the emulator).
I deleted other options I had in my mozconfig, and kept only the output from bootstrap so maybe that helped.
Comment 19•6 years ago
|
||
Comment 20•6 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/b7b1e008be45
https://hg.mozilla.org/mozilla-central/rev/9c33fda84724
https://hg.mozilla.org/mozilla-central/rev/8b70ac3ef8d0
https://hg.mozilla.org/mozilla-central/rev/b1f74fc90f37
https://hg.mozilla.org/mozilla-central/rev/bbfe0cbb90b4
https://hg.mozilla.org/mozilla-central/rev/dc41aecedaac
Description
•