android GN build: undefined reference to v8::internal::NativesCollection

181 views
Skip to first unread message

Matt Peterson

unread,
Sep 9, 2016, 1:02:46 PM9/9/16
to v8-users
So I've been trying to build v8 for android using GN, and every time I try, with multiple versions, I get the same error. It seems like natives-external.cc is not being built as part of mksnapshot. Is there something I'm doing wrong?

ninja: Entering directory `out.gn/android'
[1/1071] LINK clang_x86_v8_arm/mksnapshot
FAILED: clang_x86_v8_arm/mksnapshot
../../third_party/llvm-build/Release+Asserts/bin/clang++ -pie -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -fuse-ld=gold -B../../third_party/binutils/Linux_x64/Release/bin -Wl,--threads -Wl,--thread-count=4 -Wl,--icf=all -pthread -m32 --sysroot=../../build/linux/debian_wheezy_i386-sysroot -L/home/matt/geeky/eightytwo/pixi/android/glesjs/v8/build/linux/debian_wheezy_i386-sysroot/lib/i386-linux-gnu -Wl,-rpath-link=/home/matt/geeky/eightytwo/pixi/android/glesjs/v8/build/linux/debian_wheezy_i386-sysroot/lib/i386-linux-gnu -L/home/matt/geeky/eightytwo/pixi/android/glesjs/v8/build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu -Wl,-rpath-link=/home/matt/geeky/eightytwo/pixi/android/glesjs/v8/build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu -L/home/matt/geeky/eightytwo/pixi/android/glesjs/v8/build/linux/debian_wheezy_i386-sysroot/lib/i486-linux-gnu -Wl,-rpath-link=/home/matt/geeky/eightytwo/pixi/android/glesjs/v8/build/linux/debian_wheezy_i386-sysroot/lib/i486-linux-gnu -L/home/matt/geeky/eightytwo/pixi/android/glesjs/v8/build/linux/debian_wheezy_i386-sysroot/usr/lib/i486-linux-gnu -Wl,-rpath-link=/home/matt/geeky/eightytwo/pixi/android/glesjs/v8/build/linux/debian_wheezy_i386-sysroot/usr/lib/i486-linux-gnu -L/home/matt/geeky/eightytwo/pixi/android/glesjs/v8/build/linux/debian_wheezy_i386-sysroot/usr/lib/gcc/i486-linux-gnu/4.6 -Wl,-rpath-link=/home/matt/geeky/eightytwo/pixi/android/glesjs/v8/build/linux/debian_wheezy_i386-sysroot/usr/lib/gcc/i486-linux-gnu/4.6 -L/home/matt/geeky/eightytwo/pixi/android/glesjs/v8/build/linux/debian_wheezy_i386-sysroot/usr/lib -Wl,-rpath-link=/home/matt/geeky/eightytwo/pixi/android/glesjs/v8/build/linux/debian_wheezy_i386-sysroot/usr/lib -Wl,-rpath-link=clang_x86_v8_arm -Wl,--disable-new-dtags -Wl,-rpath=\$ORIGIN/. -Wl,-rpath-link=. -Wl,-O1 -Wl,--gc-sections -Wl,--no-as-needed -lpthread -Wl,--as-needed -o "clang_x86_v8_arm/mksnapshot" -Wl,--start-group @"clang_x86_v8_arm/mksnapshot.rsp" clang_x86_v8_arm/libicui18n.cr.so clang_x86_v8_arm/libicuuc.cr.so -Wl,--end-group  -ldl -lrt
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Handle<v8::internal::String> v8::internal::Bootstrapper::SourceLookup<v8::internal::NativesCollection<(v8::internal::NativeType)0> >(int): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)0>::GetScriptSource(int)'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Handle<v8::internal::String> v8::internal::Bootstrapper::SourceLookup<v8::internal::NativesCollection<(v8::internal::NativeType)1> >(int): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)1>::GetScriptSource(int)'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Handle<v8::internal::String> v8::internal::Bootstrapper::SourceLookup<v8::internal::NativesCollection<(v8::internal::NativeType)3> >(int): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)3>::GetScriptSource(int)'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Handle<v8::internal::String> v8::internal::Bootstrapper::SourceLookup<v8::internal::NativesCollection<(v8::internal::NativeType)2> >(int): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)2>::GetScriptSource(int)'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Bootstrapper::CompileBuiltin(v8::internal::Isolate*, int): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)0>::GetScriptName(int)'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Bootstrapper::CompileExperimentalBuiltin(v8::internal::Isolate*, int): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)1>::GetScriptName(int)'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Bootstrapper::CompileExtraBuiltin(v8::internal::Isolate*, int): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)2>::GetScriptName(int)'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Bootstrapper::CompileExperimentalExtraBuiltin(v8::internal::Isolate*, int): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)3>::GetScriptName(int)'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::InstallNatives(v8::internal::GlobalContextType): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)0>::GetDebuggerCount()'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::InstallNatives(v8::internal::GlobalContextType): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)0>::GetBuiltinsCount()'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::InstallExperimentalNatives(): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)1>::GetDebuggerCount()'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::InstallExperimentalNatives(): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)1>::GetBuiltinsCount()'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::InstallExperimentalNatives(): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)1>::GetScriptName(int)'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::InstallExperimentalNatives(): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)1>::GetScriptName(int)'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::InstallExperimentalNatives(): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)1>::GetScriptName(int)'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::InstallExperimentalNatives(): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)1>::GetBuiltinsCount()'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::InstallExtraNatives(): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)2>::GetDebuggerCount()'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::InstallExtraNatives(): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)2>::GetBuiltinsCount()'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::InstallExtraNatives(): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)2>::GetBuiltinsCount()'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::Genesis(v8::internal::Isolate*, v8::internal::MaybeHandle<v8::internal::JSGlobalProxy>, v8::Local<v8::ObjectTemplate>, v8::ExtensionConfiguration*, unsigned int, v8::internal::GlobalContextType): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)3>::GetDebuggerCount()'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::Genesis(v8::internal::Isolate*, v8::internal::MaybeHandle<v8::internal::JSGlobalProxy>, v8::Local<v8::ObjectTemplate>, v8::ExtensionConfiguration*, unsigned int, v8::internal::GlobalContextType): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)3>::GetBuiltinsCount()'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::Genesis(v8::internal::Isolate*, v8::internal::MaybeHandle<v8::internal::JSGlobalProxy>, v8::Local<v8::ObjectTemplate>, v8::ExtensionConfiguration*, unsigned int, v8::internal::GlobalContextType): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)0>::GetDebuggerCount()'
clang_x86_v8_arm/obj/v8_base/bootstrapper.o:../../src/bootstrapper.cc:function v8::internal::Genesis::Genesis(v8::internal::Isolate*, v8::internal::MaybeHandle<v8::internal::JSGlobalProxy>, v8::Local<v8::ObjectTemplate>, v8::ExtensionConfiguration*, unsigned int, v8::internal::GlobalContextType): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)0>::GetDebuggerCount()'
clang_x86_v8_arm/obj/v8_base/heap.o:../../src/heap/heap.cc:function v8::internal::Heap::CreateInitialObjects(): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)0>::GetBuiltinsCount()'
clang_x86_v8_arm/obj/v8_base/heap.o:../../src/heap/heap.cc:function v8::internal::Heap::CreateInitialObjects(): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)1>::GetBuiltinsCount()'
clang_x86_v8_arm/obj/v8_base/heap.o:../../src/heap/heap.cc:function v8::internal::Heap::CreateInitialObjects(): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)2>::GetBuiltinsCount()'
clang_x86_v8_arm/obj/v8_base/heap.o:../../src/heap/heap.cc:function v8::internal::Heap::CreateInitialObjects(): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)3>::GetBuiltinsCount()'
clang_x86_v8_arm/obj/v8_base/bytecode-peephole-optimizer.o:../../src/interpreter/bytecode-peephole-optimizer.cc:function v8::internal::interpreter::BytecodePeepholeOptimizer::ApplyPeepholeAction(v8::internal::interpreter::BytecodeNode*): error: undefined reference to 'v8::internal::interpreter::PeepholeActionTable::Lookup(v8::internal::interpreter::Bytecode, v8::internal::interpreter::Bytecode)'
clang_x86_v8_arm/obj/v8_base/runtime-test.o:../../src/runtime/runtime-test.cc:function v8::internal::Runtime_NativeScriptsCount(int, v8::internal::Object**, v8::internal::Isolate*): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)0>::GetBuiltinsCount()'
clang_x86_v8_arm/obj/v8_base/runtime-test.o:../../src/runtime/runtime-test.cc:function v8::internal::Stats_Runtime_NativeScriptsCount(int, v8::internal::Object**, v8::internal::Isolate*): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)0>::GetBuiltinsCount()'
clang_x86_v8_arm/obj/v8_base/deserializer.o:../../src/snapshot/deserializer.cc:function v8::internal::Deserializer::ReadData(v8::internal::Object**, v8::internal::Object**, int, unsigned char*): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)0>::GetScriptSource(int)'
clang_x86_v8_arm/obj/v8_base/deserializer.o:../../src/snapshot/deserializer.cc:function v8::internal::Deserializer::ReadData(v8::internal::Object**, v8::internal::Object**, int, unsigned char*): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)2>::GetScriptSource(int)'
clang_x86_v8_arm/obj/v8_base/serializer.o:../../src/snapshot/serializer.cc:function v8::internal::Serializer::ObjectSerializer::VisitExternalOneByteString(v8::String::ExternalOneByteStringResource**): error: undefined reference to 'v8::internal::NativesCollection<(v8::internal::NativeType)2>::GetBuiltinsCount()'
clang: error: linker command failed with exit code 1 (use -v to see invocation)


Michael Achenbach

unread,
Sep 12, 2016, 2:47:37 AM9/12/16
to v8-users
Please provide the exact commands you used - also v8 revision and gn args.
Reply all
Reply to author
Forward
0 new messages