Help with linking v8 libraries with android code

100 показвания
Преминаване към първото непрочетено съобщение

Dzung Tran

непрочетено,
28.01.2017 г., 13:25:2128.01.17 г.
до v8-users
I built the v8 libraries using GN using these args:

    is_debug = false
    v8_static_library = true
    v8_target_cpu = "arm"
    target_os = "android"
    target_cpu = "arm"

I got these libraries:
 
parallels@ubuntu:~/v8$ find out.gn/ -name *.a

I am trying to compile a c++ fie with these libraries using NDK, and I get bunch of errors 

My Android.mk file looks like this
=================================
LOCAL_PATH := $(call my-dir)
LOCAL_MULTILIB := "both"

include $(CLEAR_VARS)
LOCAL_MODULE    := v8_base
include $(PREBUILT_STATIC_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := v8_libbase
include $(PREBUILT_STATIC_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := v8_libplatform
include $(PREBUILT_STATIC_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := v8_nosnapshot
include $(PREBUILT_STATIC_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := j2v8_android_$(TARGET_ARCH_ABI)
LOCAL_SRC_FILES := com_eclipsesource_v8_V8Impl.cpp
LOCAL_C_INCLUDES := $(HOME)/v8/include $(HOME)/v8
LOCAL_CFLAGS += -std=c++11 -Wall -Wno-unused-function -Wno-unused-variable -O3 -funroll-loops -ftree-vectorize -ffast-math -fpermissive -fpic
LOCAL_STATIC_LIBRARIES := v8_base v8_libbase v8_libplatform v8_nosnapshot
LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog -latomic
include $(BUILD_SHARED_LIBRARY)

My Application.mk file looks like this:
=============================

APP_ABI := armeabi armeabi-v7a

APP_PLATFORM := android-15

APP_STL=c++_static


I get these errors:
/home/parallels/v8/third_party/android_tools/ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.9.x/../../../../arm-linux-androideabi/bin/ld: error: /home/parallels/v8/out.gn/arm.release/clang_x86_v8_arm/obj/libv8_base.a(api.o): incompatible target
/home/parallels/v8/third_party/android_tools/ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.9.x/../../../../arm-linux-androideabi/bin/ld: error: /home/parallels/v8/out.gn/arm.release/clang_x86_v8_arm/obj/libv8_base.a(v8threads.o): incompatible target
/home/parallels/v8/third_party/android_tools/ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.9.x/../../../../arm-linux-androideabi/bin/ld: error: /home/parallels/v8/out.gn/arm.release/clang_x86_v8_arm/obj/libv8_libplatform.a(default-platform.o): incompatible target
/home/parallels/J2V8/jni/com_eclipsesource_v8_V8Impl.cpp:207: error: undefined reference to 'v8::Isolate::GetCurrentContext()'
/home/parallels/J2V8/jni/com_eclipsesource_v8_V8Impl.cpp:207: error: undefined reference to 'v8::Context::Global()'
/home/parallels/J2V8/jni/com_eclipsesource_v8_V8Impl.cpp:164: error: undefined reference to 'v8::V8::GetVersion()'
/home/parallels/J2V8/jni/com_eclipsesource_v8_V8Impl.cpp:171: error: undefined reference to 'v8::String::NewFromTwoByte(v8::Isolate*, unsigned short const*, v8::String::NewStringType, int)'
/home/parallels/v8/include/v8.h:8627: error: undefined reference to 'v8::HandleScope::CreateHandle(v8::internal::Isolate*, v8::internal::Object*)'
/home/parallels/J2V8/jni/com_eclipsesource_v8_V8Impl.cpp:179: error: undefined reference to 'v8::Object::Get(v8::Local<v8::Value>)'
/home/parallels/v8/include/v8.h:8627: error: undefined reference to 'v8::HandleScope::CreateHandle(v8::internal::Isolate*, v8::internal::Object*)'
/home/parallels/J2V8/jni/com_eclipsesource_v8_V8Impl.cpp:186: error: undefined reference to 'v8::String::NewFromTwoByte(v8::Isolate*, unsigned short const*, v8::String::NewStringType, int)'


Anybody please help!!!





Отговор до всички
Отговор до автора
Препращане
0 нови съобщения