Just an update. I figured out what the issue was and solved it. The error I got is actually a warning which was treated as an error until I added "treat_warnings_as_errors = false" to the GN args. This was enough to successfully build V8 and the Python wrapper. At a first glance it seems to me the V8 libcxx was updated in branch 9.5+ and the updated version emits this warning now.
Thanks for the support and regards, Angelo Il giorno mercoledì 13 ottobre 2021 alle 12:20:43 UTC+2 Angelo Dell'Aera ha scritto: > In the last couple of days I tried playing with the GN args as you > suggested but no luck. > > Please note that I was able to successfully compile removing both of them > as you suggested but I got the following error when I tried running the > test suite > > ImportError: /usr/lib/python3.9/site-packages/_ > STPyV8.cpython-39-x86_64-linux-gnu.so: undefined symbol: > _ZNSt3__119__shared_weak_countD2Ev > > Moreover please be aware that I was able to successfully compile V8 > v9.4.146.21 today using the GN args I showed in my previous email and no > issues at all with the test suite. > > Regards, > Angelo > > Il giorno lunedì 11 ottobre 2021 alle 19:04:12 UTC+2 Jakob Kummerow ha > scritto: > >> I'd try to use either both of: >> is_clang = false >> use_custom_libcxx = false >> or neither of them. Looks like the bundled Clang isn't happy with the >> sysroot's libcxx. >> >> A possible alternative solution for making things work with non-default >> toolchains is treat_warnings_as_errors = false (and possibly >> fatal_linker_warnings >> = false as well). >> >> >> On Sat, Oct 9, 2021 at 10:39 AM Angelo Dell'Aera <[email protected]> >> wrote: >> >>> >>> FYI I maintain a Python V8 wrapper (available at >>> https://github.com/area1/stpyv8) and use >>> Github Actions to automatically build new releases on multiple platforms >>> and never experienced >>> this issue since the first release (v7.9.317.31). >>> >>> To answer your questions, yes "gclient sync" is executed every time the >>> workflow runs and these >>> are the GN args I use >>> >>> gn_args = { >>> "v8_deprecation_warnings" : "true", >>> "v8_imminent_deprecation_warnings" : "true", >>> "v8_enable_disassembler" : "false", >>> "v8_enable_i18n_support" : "true", >>> "is_component_build" : "false", >>> "is_debug" : "true" if os.environ.get("STPYV8_DEBUG") else "false", >>> "use_custom_libcxx" : "false", >>> "v8_monolithic" : "true", >>> "v8_use_external_startup_data" : "false", >>> "v8_enable_pointer_compression" : "false", >>> "v8_enable_31bit_smis_on_64bit_arch" : "false" >>> } >>> >>> Regards, >>> Angelo >>> >>> >>> Il giorno venerdì 8 ottobre 2021 alle 22:19:38 UTC+2 Jakob Kummerow ha >>> scritto: >>> >>>> Have you run gclient sync after switching branches? >>>> >>>> What are your GN args? >>>> >>>> >>>> On Fri, Oct 8, 2021 at 10:24 AM Angelo Dell'Aera <[email protected]> >>>> wrote: >>>> >>>>> >>>>> Hi all, >>>>> just to want to report an issue I am experiencing in branches 9.5 and >>>>> 9.6. The >>>>> build fails on multiple platforms (tested on Ubuntu 18.04, Ubuntu >>>>> 20.04, Gentoo >>>>> Linux and MacOS ). The error I get is the same on all the platforms >>>>> and is reported >>>>> below for convenience. This does not happen with branches <= 9.4 >>>>> >>>>> >>>>> FAILED: obj/v8_base_without_compiler/heap.o >>>>> 1481 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1481>../../third_party/llvm-build/Release+Asserts/bin/clang++ >>>>> >>>>> -MMD -MF obj/v8_base_without_compiler/heap.o.d -DUSE_UDEV -DUSE_AURA=1 >>>>> -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_OZONE=1 -DUSE_X11=1 >>>>> -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE >>>>> -D_GNU_SOURCE -DCR_CLANG_REVISION=\"llvmorg-14-init-4918-ge787678c-1\" >>>>> -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 >>>>> -DCR_SYSROOT_HASH=95051d95804a77144986255f534acb920cee375b -DNDEBUG >>>>> -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 >>>>> -DV8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64 -DENABLE_GDB_JIT_INTERFACE >>>>> -DENABLE_MINOR_MC -DV8_INTL_SUPPORT -DV8_ATOMIC_OBJECT_FIELD_WRITES >>>>> -DV8_ATOMIC_MARKING_STATE -DV8_ENABLE_LAZY_SOURCE_POSITIONS >>>>> -DV8_SHARED_RO_HEAP -DV8_WIN64_UNWINDING_INFO >>>>> -DV8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH >>>>> -DV8_SNAPSHOT_COMPRESSION >>>>> -DV8_ENABLE_WEBASSEMBLY -DV8_ALLOCATION_FOLDING >>>>> -DV8_ALLOCATION_SITE_TRACKING -DV8_ADVANCED_BIGINT_ALGORITHMS >>>>> -DV8_INCLUDE_RECEIVER_IN_ARGC -DV8_DEPRECATION_WARNINGS >>>>> -DV8_IMMINENT_DEPRECATION_WARNINGS -DCPPGC_CAGED_HEAP >>>>> -DV8_TARGET_ARCH_X64 >>>>> -DV8_HAVE_TARGET_OS -DV8_TARGET_OS_LINUX -DV8_RUNTIME_CALL_STATS >>>>> -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DUSE_CHROMIUM_ICU=1 >>>>> -DU_ENABLE_TRACING=1 -DU_ENABLE_RESOURCE_TRACING=0 >>>>> -DU_STATIC_IMPLEMENTATION -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -I../.. >>>>> -Igen -I../../include -Igen/include -I../../third_party/icu/source/common >>>>> -I../../third_party/icu/source/i18n -I../../third_party/zlib >>>>> -fno-delete-null-pointer-checks -fno-ident -fno-strict-aliasing >>>>> --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC >>>>> -pthread >>>>> -fcolor-diagnostics -fmerge-all-constants >>>>> -fcrash-diagnostics-dir=../../tools/clang/crashreports -mllvm >>>>> -instcombine-lower-dbg-declare=0 -m64 -march=x86-64 -msse3 >>>>> -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= >>>>> -ffile-compilation-dir=. -no-canonical-prefixes -Wall -Werror -Wextra >>>>> -Wimplicit-fallthrough -Wunreachable-code-aggressive -Wthread-safety >>>>> -Wextra-semi -Wno-missing-field-initializers -Wno-unused-parameter >>>>> -Wloop-analysis -Wno-unneeded-internal-declaration >>>>> -Wenum-compare-conditional -Wno-psabi -Wno-ignored-pragma-optimize >>>>> -Wno-builtin-assume-aligned-alignment -Wno-unused-but-set-parameter >>>>> -Wno-unused-but-set-variable -Wmax-tokens -fno-omit-frame-pointer -g0 >>>>> -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare >>>>> -Wmissing-field-initializers -Wno-shadow -Wunreachable-code >>>>> -Wshorten-64-to-32 -O3 -fdata-sections -ffunction-sections >>>>> -fno-unique-section-names -fvisibility=default -Wexit-time-destructors >>>>> -std=c++14 -fno-trigraphs -Wno-trigraphs -fno-exceptions -fno-rtti >>>>> --sysroot=../../build/linux/debian_sid_amd64-sysroot -c >>>>> ../../src/heap/heap.cc -o obj/v8_base_without_compiler/heap.o >>>>> 1482 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1482>In >>>>> >>>>> file included from ../../src/heap/heap.cc:5: >>>>> 1483 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1483>../../src/heap/heap.h:1751:22: >>>>> >>>>> error: definition of implicit copy constructor for 'GCCallbackTuple' is >>>>> deprecated because it has a user-provided copy assignment operator >>>>> [-Werror,-Wdeprecated-copy-with-user-provided-copy] >>>>> 1484 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1484> >>>>> >>>>> GCCallbackTuple& operator=(const GCCallbackTuple& other) V8_NOEXCEPT; >>>>> 1485 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1485> >>>>> >>>>> ^ >>>>> 1486 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1486>../../build/linux/debian_sid_amd64-sysroot/usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/ext/new_allocator.h:150:23: >>>>> >>>>> note: in implicit copy constructor for >>>>> 'v8::internal::Heap::GCCallbackTuple' first required here >>>>> 1487 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1487> >>>>> >>>>> { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } >>>>> 1488 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1488> >>>>> >>>>> ^ >>>>> 1489 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1489>../../build/linux/debian_sid_amd64-sysroot/usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/alloc_traits.h:512:8: >>>>> >>>>> note: in instantiation of function template specialization >>>>> '__gnu_cxx::new_allocator<v8::internal::Heap::GCCallbackTuple>::construct<v8::internal::Heap::GCCallbackTuple, >>>>> >>>>> v8::internal::Heap::GCCallbackTuple>' requested here >>>>> 1490 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1490> >>>>> >>>>> __a.construct(__p, std::forward<_Args>(__args)...); >>>>> 1491 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1491> >>>>> >>>>> ^ >>>>> 1492 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1492>../../build/linux/debian_sid_amd64-sysroot/usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/stl_uninitialized.h:976:17: >>>>> >>>>> note: in instantiation of function template specialization >>>>> 'std::allocator_traits<std::allocator<v8::internal::Heap::GCCallbackTuple>>::construct<v8::internal::Heap::GCCallbackTuple, >>>>> >>>>> v8::internal::Heap::GCCallbackTuple>' requested here >>>>> 1493 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1493> >>>>> >>>>> __traits::construct(__alloc, __dest, std::move(*__orig)); >>>>> 1494 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1494> >>>>> >>>>> ^ >>>>> 1495 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1495>../../build/linux/debian_sid_amd64-sysroot/usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/stl_uninitialized.h:1014:7: >>>>> >>>>> note: in instantiation of function template specialization >>>>> 'std::__relocate_object_a<v8::internal::Heap::GCCallbackTuple, >>>>> v8::internal::Heap::GCCallbackTuple, >>>>> std::allocator<v8::internal::Heap::GCCallbackTuple>>' requested here >>>>> 1496 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1496> >>>>> >>>>> std::__relocate_object_a(std::__addressof(*__cur), >>>>> 1497 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1497> >>>>> >>>>> ^ >>>>> 1498 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1498>../../build/linux/debian_sid_amd64-sysroot/usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/stl_uninitialized.h:1028:14: >>>>> >>>>> note: in instantiation of function template specialization >>>>> 'std::__relocate_a_1<v8::internal::Heap::GCCallbackTuple *, >>>>> v8::internal::Heap::GCCallbackTuple *, >>>>> std::allocator<v8::internal::Heap::GCCallbackTuple>>' requested here >>>>> 1499 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1499> >>>>> >>>>> return __relocate_a_1(std::__niter_base(__first), >>>>> 1500 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1500> >>>>> >>>>> ^ >>>>> 1501 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1501>../../build/linux/debian_sid_amd64-sysroot/usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/stl_vector.h:456:14: >>>>> >>>>> note: in instantiation of function template specialization >>>>> 'std::__relocate_a<v8::internal::Heap::GCCallbackTuple *, >>>>> v8::internal::Heap::GCCallbackTuple *, >>>>> std::allocator<v8::internal::Heap::GCCallbackTuple>>' requested here >>>>> 1502 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1502> >>>>> >>>>> return std::__relocate_a(__first, __last, __result, __alloc); >>>>> 1503 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1503> >>>>> >>>>> ^ >>>>> 1504 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1504>../../build/linux/debian_sid_amd64-sysroot/usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/stl_vector.h:469:9: >>>>> >>>>> note: in instantiation of member function >>>>> 'std::vector<v8::internal::Heap::GCCallbackTuple>::_S_do_relocate' >>>>> requested here >>>>> 1505 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1505> >>>>> >>>>> return _S_do_relocate(__first, __last, __result, __alloc, __do_it{}); >>>>> 1506 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1506> >>>>> >>>>> ^ >>>>> 1507 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1507>../../build/linux/debian_sid_amd64-sysroot/usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/vector.tcc:461:23: >>>>> >>>>> note: in instantiation of member function >>>>> 'std::vector<v8::internal::Heap::GCCallbackTuple>::_S_relocate' requested >>>>> here >>>>> 1508 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1508> >>>>> >>>>> __new_finish = _S_relocate(__old_start, __position.base(), >>>>> 1509 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1509> >>>>> >>>>> ^ >>>>> 1510 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1510>../../build/linux/debian_sid_amd64-sysroot/usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/vector.tcc:121:4: >>>>> >>>>> note: in instantiation of function template specialization >>>>> 'std::vector<v8::internal::Heap::GCCallbackTuple>::_M_realloc_insert<void >>>>> (*&)(v8::Isolate *, v8::GCType, v8::GCCallbackFlags, void *), v8::GCType >>>>> &, >>>>> void *&>' requested here >>>>> 1511 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1511> >>>>> >>>>> _M_realloc_insert(end(), std::forward<_Args>(__args)...); >>>>> 1512 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1512> >>>>> >>>>> ^ >>>>> 1513 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1513>../../src/heap/heap.cc:6039:26: >>>>> >>>>> note: in instantiation of function template specialization >>>>> 'std::vector<v8::internal::Heap::GCCallbackTuple>::emplace_back<void >>>>> (*&)(v8::Isolate *, v8::GCType, v8::GCCallbackFlags, void *), v8::GCType >>>>> &, >>>>> void *&>' requested here >>>>> 1514 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1514> >>>>> >>>>> gc_prologue_callbacks_.emplace_back(callback, gc_type, data); >>>>> 1515 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1515> >>>>> >>>>> ^ >>>>> 1516 >>>>> <https://github.com/area1/stpyv8/runs/3836038040?check_suite_focus=true#step:5:1516>1 >>>>> >>>>> error generated. >>>>> >>>>> Ciao, >>>>> Angelo >>>>> >>>>> -- >>>>> >>>> -- -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups "v8-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/v8-dev/8c592470-01a0-4334-a552-435446f39ac1n%40googlegroups.com.
