Closed
Description
I spend the full day yesterday trying many variations of android-configure
and other build scripts, with different versions of Node to create a shared library libnode.so
for ARM.
An overview of build options that were tried so far (some successes):
Node | NDK | Arch | Description | Result | Details |
---|---|---|---|---|---|
7.1.0 |
r15 latest |
ARM | dna2oslab + --shared |
fail | #14783 (comment) |
7.4.0 up to 7.9.0 |
r13b |
ARM | J2V8 libnode.a linked in libj2v8.so using PR#327 [1] |
success | eclipsesource/J2V8#327 (comment) |
7.10.1 |
r15 latest |
ARM | dna2oslab + --shared |
fail | #14783 (comment) |
8.3.0 |
r17 canary |
ARM | android-configure + --shared |
fail | #14783 (comment) |
8.x |
(none) | ARM64 | on-device using termux + python configure |
success | node-on-mobile/node-on-android#4 (comment) |
8.x master + #14837 |
r13b |
ARM | J2V8 libnode.a linked in libj2v8.so using PR#327 |
fail | eclipsesource/J2V8#327 (comment) |
8.x |
r17 canary |
ARM | J2V8 libnode.a linked in libj2v8.so using Clang and libc++ [2] |
fail [3] |
eclipsesource/J2V8#334 (comment) |
v8.11.4 |
r17b |
ARM / x64 | built via build-nodejs-for-android-perfectly | success | see: #14783 (comment) |
[1] Or build only the static library with https://github.com/eclipsesource/static-node-build
[2] Clang + libc++ are the way to go for 8.x builds
[3] Looks promising, needs compiling with libandroid_support
headers
Are there any more build script configurations known to work in creating Node shared libraries?
Many thanks to @gardner @DanAlbert @drywolf @matiwinnetou @irbull @mafintosh @gibfahn for all their great efforts in helping to figure this out! 👍