Hi Jakob, Thank you very much for your advice. I should disclose to all of you that I am a blind user who relies on text to speech software to access my computer. The build output goes by and gets cleared away so fast that I completely miss the majority of it. Is there a tool or build output file I can reference to find out exactly which defines are required? While I'm waiting for the debug build to finish I tried various combinations of the flags you supplied, but I'm getting the same result. Thanks.
On 10/12/20, Ben Noordhuis <i...@bnoordhuis.nl> wrote: > On Mon, Oct 12, 2020 at 2:38 AM Cameron Caturria > <surviving.deceptive.wo...@gmail.com> wrote: >> >> Hi, >> I have been trying for some time to build a working V8 static library >> under Mac OS with limited success. I can get it to build, but the >> result is unstable. >> I have successfully setup depot-tools, added it to my $PATH, fetched >> V8 and checked out the desired version (I selected version 8.1.307, >> since this is the version that ships with the latest stable Node.js). >> If I use the one step build process after gclient sync: >> Tools/dev/gm.py x64.release >> The result is a build that doesn’t work at all (v8::V8::Initialize() >> never returns, program hangs). >> If I add use_custom_libcxx to build arguments as suggested by this >> related Stack Overflow question: >> https://stackoverflow.com/questions/62250913/cross-compiling-v8-for-arm-hello-world-hangs-during-initialize >> I get a somewhat usable build with some stability issues. >> Specifically, it will crash inside of all error object constructors >> (v8::Exception::RangeError, v8::Exception::TypeError etc). >> The v8_shell sample application that builds alongside V8 works as it >> should, but if I build it myself it crashes after evaluating every >> line. >> I am new to V8, and the documentation is anything but beginner >> friendly. In addition to the embedding guide, I am mostly relying on >> the API reference made available by nodesource.com. >> I am using the following build args: >> >> is_component_build = false >> is_debug = false >> target_cpu = "x64" >> use_goma = false >> goma_dir = "None" >> v8_enable_backtrace = true >> v8_enable_disassembler = true >> v8_enable_object_print = true >> v8_enable_verify_heap = true >> use_custom_libcxx=false >> I am using the default Clang which ships with Xcode: >> >> Apple clang version 11.0.0 (clang-1100.0.33.12) >> Target: x86_64-apple-darwin19.6.0 >> Thread model: posix >> InstalledDir: >> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin >> >> I am using the following compiler and linker flags to build the >> shell.cc example: >> g++ -O3 -std=c++0x ./shell.cc -I/usr/local/include/v8 -lwee8 >> -lv8_libbase -lv8_libplatform -pthreads -o v8_shell >> >> A nudge in the right direction would be greatly appreciated. >> Thanks in advance. > > There are a couple of preprocessor flags (the -DV8_OPTION_NAME flags > you see in the build output) that affect V8's ABI, notably > V8_COMPRESS_POINTERS and V8_31BIT_SMIS_ON_64BIT_ARCH, and perhaps > V8_ENABLE_CHECKS too. > > Compiling the shell should be done with the exact same flags as the V8 > build. > > -- > -- > 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/CAHQurc_jNB%2BD%3Dnku7AMBNt9TX79_m2u-fq8HDkhxAbte658BXQ%40mail.gmail.com. > -- -- 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/CAKAqCuxi84%3DZnSLPG8vO8uEPE-dtFVyGTTm0Tiv1EVA4LETkww%40mail.gmail.com.