+Michael Achenbach <machenb...@chromium.org> On Wed, Feb 20, 2019 at 1:04 PM Darin Dimitrov <darin.dimit...@gmail.com> wrote:
> Yes, but there's no *libandroid_support.a* for ARM64. This file exists > only for ARM and x86 in the NDKs. Also as far as I know, API levels >= 21 > do not need this file anymore. > > Looking at this line here: > https://chromium.googlesource.com/chromium/src/build.git/+/refs/heads/master/config/android/BUILD.gn#120 > > libs += [ "android_support" ] > > It looks like V8 is *always *trying to link to *libandroid_support.a*. If > I put a condition there: > > if (current_cpu != "arm64") { > libs += [ "android_support" ] > } > > then everything seems to build and work fine. > > On Wednesday, February 20, 2019 at 12:20:01 PM UTC+2, Jakob Gruber wrote: >> >> You are building with target_os="android"; would you expect this to not >> need libandroid_support? >> >> On Wed, Feb 20, 2019 at 10:23 AM Darin Dimitrov <darin.d...@gmail.com> >> wrote: >> >>> I am trying to cross compile V8 for ARM64 with *is_component_build=true* >>> for ARM64: >>> >>> gn gen outgn/release --args="is_component_build=true is_debug=false >>> symbol_level=0 target_cpu=\"arm64\" v8_target_cpu=\"arm64\" >>> target_os=\"android\"" >>> ninja -v -C outgn/release v8_libplatform >>> >>> And getting the following compilation error when linking libc++: >>> >>> [85/89] python "../../build/toolchain/gcc_solink_wrapper.py" --readelf= >>> "../../third_party/android_ndk/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-readelf" >>> --nm= >>> "../../third_party/android_ndk/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-nm" >>> --strip=../../buildtools/third_party/eu-strip/bin/eu-strip --sofile= >>> "./lib.unstripped/libc++.cr.so" --tocfile="./libc++.cr.so.TOC" --output= >>> "./libc++.cr.so" -- ../../third_party/llvm-build/Release+Asserts/bin/ >>> clang++ -shared -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,relro >>> -Wl,-z,defs -Wl,--as-needed --gcc-toolchain=../../third_party/ >>> android_ndk/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64 - >>> fuse-ld=lld -Wl,-z,max-page-size=4096 -Wl,--icf=all -Wl,--color-diagnostics >>> -Wl,--no-rosegment -Wl,--exclude-libs=libgcc.a -Wl,--exclude-libs= >>> libvpx_assembly_arm.a --target=aarch64-linux-android >>> -Wl,--warn-shared-textrel >>> -Wl,-O2 -Wl,--gc-sections --sysroot=../../third_party/android_ndk/ >>> platforms/android-21/arch-arm64 -nostdlib -Wl,--warn-shared-textrel - >>> Werror -Wl,-u_sanitizer_options_link_helper -L../../third_party/ >>> android_ndk/sources/cxx-stl/llvm-libc++/libs/arm64-v8a -o >>> "./lib.unstripped/libc++.cr.so" -Wl,-soname="libc++.cr.so" @ >>> "./libc++.cr.so.rsp" >>> FAILED: libc++.cr.so libc++.cr.so.TOC lib.unstripped/libc++.cr.so >>> python "../../build/toolchain/gcc_solink_wrapper.py" --readelf= >>> "../../third_party/android_ndk/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-readelf" >>> --nm= >>> "../../third_party/android_ndk/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-nm" >>> --strip=../../buildtools/third_party/eu-strip/bin/eu-strip --sofile= >>> "./lib.unstripped/libc++.cr.so" --tocfile="./libc++.cr.so.TOC" --output= >>> "./libc++.cr.so" -- ../../third_party/llvm-build/Release+Asserts/bin/ >>> clang++ -shared -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,relro >>> -Wl,-z,defs -Wl,--as-needed --gcc-toolchain=../../third_party/ >>> android_ndk/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64 - >>> fuse-ld=lld -Wl,-z,max-page-size=4096 -Wl,--icf=all -Wl,--color-diagnostics >>> -Wl,--no-rosegment -Wl,--exclude-libs=libgcc.a -Wl,--exclude-libs= >>> libvpx_assembly_arm.a --target=aarch64-linux-android >>> -Wl,--warn-shared-textrel >>> -Wl,-O2 -Wl,--gc-sections --sysroot=../../third_party/android_ndk/ >>> platforms/android-21/arch-arm64 -nostdlib -Wl,--warn-shared-textrel - >>> Werror -Wl,-u_sanitizer_options_link_helper -L../../third_party/ >>> android_ndk/sources/cxx-stl/llvm-libc++/libs/arm64-v8a -o >>> "./lib.unstripped/libc++.cr.so" -Wl,-soname="libc++.cr.so" @ >>> "./libc++.cr.so.rsp" >>> ld.lld: error: unable to find library -landroid_support >>> >>> So the question is why is the linker trying to find *libandroid_supprt* >>> for ARM64 builds and how to fix this error? >>> >>> >>> > -- -- v8-users mailing list v8-users@googlegroups.com http://groups.google.com/group/v8-users --- You received this message because you are subscribed to the Google Groups "v8-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to v8-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.