V8 Builds consistently fails on all recent versions when using the 
following settings. I have tried numerous versions and arguments but it 
seems to be impossible to build with thin_lto and official_build enabled at 
the same time. Is intentional by the v8 team? If not, what can be done to 
resolve it?

We have tried building on both linux x64 and mac M1 devices. They both have 
the same issue at hand.

is_official_build = true
use_thin_lto = true
is_component_build = false
is_debug = false
symbol_level = 0
target_cpu ="arm64"
v8_target_cpu = "arm64"
v8_enable_webassembly = false
chrome_pgo_phase = 0
optimize_for_size = true
v8_enable_i18n_support = false
v8_enable_pointer_compression = false
v8_static_library = true
v8_use_external_startup_data = false
v8_monolithic = true

ninja -C out.gn/arm64 v8_monolith


2105/2160] LINK ./mksnapshot
FAILED: mksnapshot mksnapshot.dSYM/Contents/Info.plist 
mksnapshot.dSYM/Contents/Resources/DWARF/mksnapshot
TOOL_VERSION=1715788274 ../../build/toolchain/apple/linker_driver.py 
-Wcrl,driver,../../third_party/llvm-build/Release+Asserts/bin/clang++ 
-Wcrl,strippath,/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip
 
-Wcrl,installnametoolpath,../../third_party/llvm-build/Release+Asserts/bin/llvm-install-name-tool
 
 -Wcrl,dsym,. -Wcrl,dsymutilpath,../../tools/clang/dsymutil/bin/dsymutil 
 -Werror -fuse-ld=lld -Wl,-fatal_warnings -Wl,--icf=all 
-Wl,--color-diagnostics -Wl,-mllvm,-instcombine-lower-dbg-declare=0 
-Wl,-mllvm,-split-threshold-for-reg-with-hint=0 
-Wl,-cache_path_lto,thinlto-cache 
-Wl,--thinlto-cache-policy=cache_size=10\%:cache_size_bytes=40g:cache_size_files=100000
 
-flto=thin -Wl,--thinlto-jobs=all -Wl,-mllvm,-import-instr-limit=30 
-Wcrl,object_path_lto -Wl,-mllvm,-disable-auto-upgrade-debug-info 
-fwhole-program-vtables -Wl,--strict-auto-link 
-Wl,--no-call-graph-profile-sort --target=arm64-apple-macos 
-Wl,-mllvm,-enable-machine-outliner=never -no-canonical-prefixes 
-nostdlib++ -isysroot 
../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk
 
-mmacos-version-min=10.15 -Wl,--lto-O0 -Wl,-ObjC -Wcrl,strip,-x,-S 
-Wl,-dead_strip -Wl,-no_data_in_code_info -Wl,-no_function_starts 
-Wl,--icf=none -o "./mksnapshot" "@./mksnapshot.rsp"
ld64.lld: error: undefined symbol: vtable for 
v8::internal::SimpleStringResource<char, 
v8::String::ExternalOneByteStringResource>
> referenced by tmpay1bx_7e/380.arm64.lto.o:(symbol 
v8::internal::ExternalizeStringExtension::Externalize(v8::FunctionCallbackInfo<v8::Value>
 
const&)+0x17c)
> >>> referenced by tmpay1bx_7e/380.arm64.lto.o:(symbol 
v8::internal::ExternalizeStringExtension::Externalize(v8::FunctionCallbackInfo<v8::Value>
 
const&)+0x178)
> >>> referenced by tmpay1bx_7e/380.arm64.lto.o:(symbol 
v8::internal::SimpleStringResource<char, 
v8::String::ExternalOneByteStringResource>::~SimpleStringResource()+0x14)
> >>> referenced 3 more times
>
> ld64.lld: error: undefined symbol: vtable for 
v8::internal::SimpleStringResource<unsigned short, 
v8::String::ExternalStringResource>
> >>> referenced by tmpay1bx_7e/380.arm64.lto.o:(symbol 
v8::internal::ExternalizeStringExtension::Externalize(v8::FunctionCallbackInfo<v8::Value>
 
const&)+0xa8)
> >>> referenced by tmpay1bx_7e/380.arm64.lto.o:(symbol 
v8::internal::ExternalizeStringExtension::Externalize(v8::FunctionCallbackInfo<v8::Value>
 
const&)+0xa4)
> clang++: error: linker command failed with exit code 1 (use -v to see 
invocation)

-- 
-- 
v8-dev mailing list
v8-dev@googlegroups.com
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 v8-dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/v8-dev/fd959be6-4a9c-44df-8352-76e826701ed7n%40googlegroups.com.

Reply via email to