I still need help...

questions -

How do I get the android build to stop using the C++ headers under 
"Release+Asserts/include" next to its own clang path?  Those are absolutely 
conflicting with the ones in my ndk.  If I move the dir out of the way, it 
builds the arm64 files fine, but the mac (host) builds fail to find c++ 
headers which brings me to..

I care zero about the host files, why is this thing building files for x64 
mac when I'm trying to build for andriod??  Can I force the build system to 
skip building for mac and only build the android libs?  All I need is a 
working libv8_monolithic.a.  I care nothing about d8 or any unit tests or 
any of the other stuff.
On Thursday, February 4, 2021 at 8:04:45 PM UTC-8 Mike Farrell wrote:

>
> More things I've tried .. that also gave me the exact same linker errors.. 
>  this is so frustrating
>
> -fexceptions -frtti (my own host engine builds with these)
> On Thursday, February 4, 2021 at 6:48:09 PM UTC-8 Mike Farrell wrote:
>
>> I'll start out by saying my engine uses c++_shared as the STL runtime. 
>>  This is absolutely critical for a 200+ line engine with dozens of 
>> dependencies that i've already got building and going this way.
>>
>> I've spent 8 hours completely pulling my hair out trying to desperately 
>> get V8 to for the love of god just link properly without spamming 1000's of 
>> C++ linker errors.
>>
>> I've tried literally everything I can think of.  Please please help me. 
>>  Android is the final build I have to do for a v8 integration.  
>>
>> My current build args (I've tried just about every combination of these):
>> target_os = "android"
>> is_debug = false
>> is_clang = false
>> use_sysroot = false
>> v8_use_snapshot = true
>> treat_warnings_as_errors = false
>> target_cpu = "arm64"       # as v8gen.py assumes a simulator build.
>> v8_target_cpu = "arm64"
>> is_component_build = false
>> v8_enable_i18n_support = false
>> v8_monolithic = true
>> v8_static_library = true
>> v8_use_external_startup_data = false
>> use_custom_libcxx = false
>> use_custom_libcxx_for_host=false
>> use_libfuzzer=false
>> v8_enable_test_features=""
>> v8_experimental_extra_library_files=[]
>> v8_extra_library_files=[]
>> use_glib = false
>> use_drfuzz=false
>> android32_ndk_api_level = 19
>> android_ndk_major_version = 19
>> android_ndk_version = "r19"
>> android_sdk_platform_version = 19
>> android_sdk_version = 19
>> android64_ndk_api_level = 19
>>
>> I've also manually changed -std=c++14 (not gnu) to match what I have in 
>> my engine, this also has no effect on the errors.  
>>
>> Here's an example build line.  These settings are spot-on-exact with what 
>> i'm using my main engine's code.  
>>
>> [2/82] ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF 
>> obj/v8_compiler/compiler-source-position-table.o.d -DANDROID 
>> -DHAVE_SYS_UIO_H -DANDROID_NDK_VERSION_ROLL=r19_1 -D__STDC_CONSTANT_MACROS 
>> -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -DNDEBUG -DNVALGRIND 
>> -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DV8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64 
>> -DENABLE_MINOR_MC -DV8_USE_SNAPSHOT -DV8_CONCURRENT_MARKING 
>> -DV8_ENABLE_LAZY_SOURCE_POSITIONS -DV8_EMBEDDED_BUILTINS 
>> -DV8_SHARED_RO_HEAP -DV8_WIN64_UNWINDING_INFO 
>> -DV8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH -DV8_DEPRECATION_WARNINGS 
>> -DV8_IMMINENT_DEPRECATION_WARNINGS -DV8_TARGET_ARCH_ARM64 
>> -DV8_DEPRECATION_WARNINGS -DV8_IMMINENT_DEPRECATION_WARNINGS -I../.. -Igen 
>> -I../.. -Igen -fno-strict-aliasing --param=ssp-buffer-size=4 
>> -fstack-protector -funwind-tables -fPIC -pipe -ffunction-sections 
>> -fno-short-enums --target=aarch64-linux-android19 
>> -DHAVE_PTHREAD_COND_TIMEDWAIT_MONOTONIC=1 -mno-outline 
>> -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -Wall 
>> -Wno-unused-local-typedefs -Wno-maybe-uninitialized 
>> -Wno-deprecated-declarations -Wno-comments -Wno-packed-not-aligned 
>> -Wno-missing-field-initializers -Wno-unused-parameter 
>> -fno-omit-frame-pointer -g1 -Wno-strict-overflow -Wno-return-type -O2 
>> -fno-ident -fdata-sections -ffunction-sections -fvisibility=default 
>> -std=c++14 -Wno-narrowing -Wno-class-memaccess -fno-exceptions -fno-rtti 
>> --sysroot=../../third_party/android_ndk/toolchains/llvm/prebuilt/darwin-x86_64/sysroot
>>  
>> -c ../../src/compiler/compiler-source-position-table.cc -o 
>> obj/v8_compiler/compiler-source-position-table.o
>>
>>
>>
>> When I link with my engine I can't ever get past thousands of C++ related 
>> linker errors:
>>
>>
>> /Users/mike/comp/googlesource-android/v8/v8/
>> out.gn/arm.release/obj/libv8_monolith.a(turbo-assembler.o): In function 
>> `~basic_stringbuf':
>>
>> /Users/mike/comp/googlesource-android/v8/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/iosfwd:130:
>>  
>> undefined reference to `std::__1::basic_streambuf<char, 
>> std::__1::char_traits<char> >::~basic_streambuf()'
>>
>> /Users/mike/comp/googlesource-android/v8/v8/
>> out.gn/arm.release/obj/libv8_monolith.a(turbo-assembler.o): In function 
>> `~basic_ostringstream':
>>
>> /Users/mike/comp/googlesource-android/v8/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/iosfwd:136:
>>  
>> undefined reference to `std::__1::basic_ostream<char, 
>> std::__1::char_traits<char> >::~basic_ostream()'
>>
>> /Users/mike/comp/googlesource-android/v8/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/iosfwd:136:
>>  
>> undefined reference to `std::__1::basic_ios<char, 
>> std::__1::char_traits<char> >::~basic_ios()'
>>
>> /Users/mike/comp/googlesource-android/v8/v8/
>> out.gn/arm.release/obj/libv8_monolith.a(turbo-assembler.o): In function 
>> `~basic_stringbuf':
>>
>> /Users/mike/comp/googlesource-android/v8/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/iosfwd:130:
>>  
>> undefined reference to `std::__1::basic_streambuf<char, 
>> std::__1::char_traits<char> >::~basic_streambuf()'
>>
>> /Users/mike/comp/googlesource-android/v8/v8/
>> out.gn/arm.release/obj/libv8_monolith.a(turbo-assembler.o): In function 
>> `~basic_ostringstream':
>>
>> /Users/mike/comp/googlesource-android/v8/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/iosfwd:136:
>>  
>> undefined reference to `std::__1::basic_ostream<char, 
>> std::__1::char_traits<char> >::~basic_ostream()'
>>
>> /Users/mike/comp/googlesource-android/v8/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/iosfwd:136:
>>  
>> undefined reference to `std::__1::basic_ios<char, 
>> std::__1::char_traits<char> >::~basic_ios()'
>>
>> /Users/mike/comp/googlesource-android/v8/v8/
>> out.gn/arm.release/obj/libv8_monolith.a(turbo-assembler.o): In function 
>> `~basic_stringbuf':
>>
>>
>> I'm really at my wits end here.  I simply cannot spend another 8 hour day 
>> on this with nothing to show for it.  
>>
>

-- 
-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/v8-users/9b14f80b-2c5d-4f99-821d-5f1b95f2cdecn%40googlegroups.com.

Reply via email to