Hey, hope your day is going well! So since you're using a more recent version of V8, building V8 for windows, let alone as a DLL has a massive PITA for most embedders like you and me.
Anyway, to fix the abseil linker errors, what you want to do is first make sure you're compiling with clang or clang-cl. You can do this by passing the: 'is_clang=true' to your GN arguments. If using clang isn't an option, I recommend adding the `/Zc:dllexportsInlines-` flag (See this conversation <https://groups.google.com/g/v8-users/c/6yUV_M_ww1s/m/vtlChxaiAAAJ>). The main reason why this is happening, is MSVC getting confused on what symbol to use for the standard library, thus causing linker errors. This has worked for my team, but if you're still having problems, feel free to reply, and ill see if I can help. [image: Logo] <https://www.wdstudios.tech/> Mikael K Aboagye | Co-Founder/Lead Software Engineer WD Studios [image: phone-icon] mikaelama...@wdstudios.tech [image: website-icon] www.wdstudios.tech On Wednesday, June 4, 2025 at 10:07:40 AM UTC-4 dobrg...@gmail.com wrote: Hello, I builded and embeded v8 on Windows 10 successfully when is_component_build = false and v8_monolithic = false options are set. But I want to build individual libraries for my project and trying to build with this configuration: *dcheck_always_on = falseis_component_build = trueis_debug = falsetarget_cpu = "x64"use_custom_libcxx = falsev8_monolithic = falsev8_use_external_startup_data = falsetreat_warnings_as_errors = false* I get this linker errors: [1/9] LINK(DLL) third_party_abseil-cpp_absl.dll third_party_abseil-cpp_absl.dll.lib third_party_abseil-cpp_absl.dll.pdb FAILED: third_party_abseil-cpp_absl.dll third_party_abseil-cpp_absl.dll.lib third_party_abseil-cpp_absl.dll.pdb ..\..\third_party\llvm-build\Release+Asserts\bin\lld-link.exe "/OUT:./third_party_abseil-cpp_absl.dll" /nologo -libpath:..\..\third_party\llvm-build\Release+Asserts\lib\clang\20\lib\windows "-libpath:../../../../../../../../Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/ATLMFC/lib/x64" "-libpath:../../../../../../../../Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/lib/x64" "-libpath:../../../../../../../../Program Files (x86)/Windows Kits/10/lib/10.0.22621.0/ucrt/x64" "-libpath:../../../../../../../../Program Files (x86)/Windows Kits/10/lib/10.0.22621.0/um/x64" /MACHINE:X64 "/IMPLIB:./third_party_abseil-cpp_absl.dll.lib" /DLL "/PDB:./third_party_abseil-cpp_absl.dll.pdb" "@./third_party_abseil-cpp_absl.dll.rsp" lld-link: error: <root>: undefined symbol: public: __cdecl absl::Cord::Cord<class std::__Cr::basic_string<char, struct std::__Cr::char_traits<char>, class std::__Cr::allocator<char>>, 0>(class std::__Cr::basic_string<char, struct std::__Cr::char_traits<char>, class std::__Cr::allocator<char>> &&) lld-link: error: <root>: undefined symbol: public: void __cdecl absl::base_internal::AtomicHook<void (__cdecl *)(enum absl::LogSeverity, char const *, int, class std::__Cr::basic_string<char, struct std::__Cr::char_traits<char>, class std::__Cr::allocator<char>> const &)>::operator()<enum absl::LogSeverity, char const *const &, int, char const (&)[34]>(enum absl::LogSeverity &&, char const *const &, int &&, char const (&)[34]) const lld-link: error: <root>: undefined symbol: public: void __cdecl absl::base_internal::AtomicHook<void (__cdecl *)(enum absl::LogSeverity, char const *, int, class std::__Cr::basic_string<char, struct std::__Cr::char_traits<char>, class std::__Cr::allocator<char>> const &)>::operator()<enum absl::LogSeverity, char const *const &, int, char const (&)[38]>(enum absl::LogSeverity &&, char const *const &, int &&, char const (&)[38]) const lld-link: error: <root>: undefined symbol: public: void __cdecl absl::base_internal::AtomicHook<void (__cdecl *)(enum absl::LogSeverity, char const *, int, class std::__Cr::basic_string<char, struct std::__Cr::char_traits<char>, class std::__Cr::allocator<char>> const &)>::operator()<enum absl::LogSeverity, char const *const &, int, char const (&)[39]>(enum absl::LogSeverity &&, char const *const &, int &&, char const (&)[39]) const lld-link: error: <root>: undefined symbol: private: class std::__Cr::basic_string_view<char, struct std::__Cr::char_traits<char>> __cdecl absl::cord_internal::CordRepBtree::AddData<1>(class std::__Cr::basic_string_view<char, struct std::__Cr::char_traits<char>>, unsigned __int64) lld-link: error: <root>: undefined symbol: private: static class absl::cord_internal::CordRepBtree * __cdecl absl::cord_internal::CordRepBtree::AddData<1>(class absl::cord_internal::CordRepBtree *, class std::__Cr::basic_string_view<char, struct std::__Cr::char_traits<char>>, unsigned __int64) lld-link: error: <root>: undefined symbol: private: class std::__Cr::basic_string_view<char, struct std::__Cr::char_traits<char>> __cdecl absl::cord_internal::CordRepBtree::AddData<0>(class std::__Cr::basic_string_view<char, struct std::__Cr::char_traits<char>>, unsigned __int64) lld-link: error: <root>: undefined symbol: private: static class absl::cord_internal::CordRepBtree * __cdecl absl::cord_internal::CordRepBtree::AddData<0>(class absl::cord_internal::CordRepBtree *, class std::__Cr::basic_string_view<char, struct std::__Cr::char_traits<char>>, unsigned __int64) lld-link: error: <root>: undefined symbol: public: void __cdecl absl::Cord::Append<class std::__Cr::basic_string<char, struct std::__Cr::char_traits<char>, class std::__Cr::allocator<char>>, 0>(class std::__Cr::basic_string<char, struct std::__Cr::char_traits<char>, class std::__Cr::allocator<char>> &&) lld-link: error: <root>: undefined symbol: void __cdecl absl::strings_internal::Base64EscapeInternal<class std::__Cr::basic_string<char, struct std::__Cr::char_traits<char>, class std::__Cr::allocator<char>>>(unsigned char const *, unsigned __int64, class std::__Cr::basic_string<char, struct std::__Cr::char_traits<char>, class std::__Cr::allocator<char>> *, bool, char const *) lld-link: error: <root>: undefined symbol: void __cdecl absl::base_internal::CallOnceImpl<void (__cdecl &)(void)>(struct std::__Cr::atomic<unsigned int> *, enum absl::base_internal::SchedulingMode, void (__cdecl &)(void)) lld-link: error: <root>: undefined symbol: void __cdecl absl::base_internal::CallOnceImpl<void (__cdecl absl::flags_internal::FlagImpl::*)(void), class absl::flags_internal::FlagImpl *>(struct std::__Cr::atomic<unsigned int> *, enum absl::base_internal::SchedulingMode, void (__cdecl absl::flags_internal::FlagImpl::*&&)(void), class absl::flags_internal::FlagImpl *&&) lld-link: error: <root>: undefined symbol: private: static bool __cdecl absl::Condition::CastAndCallFunction<struct std::__Cr::atomic<bool> const>(class absl::Condition const *) lld-link: error: <root>: undefined symbol: private: void __cdecl absl::log_internal::LogMessage::CopyToEncodedBuffer<1>(class std::__Cr::basic_string_view<char, struct std::__Cr::char_traits<char>>) lld-link: error: <root>: undefined symbol: private: void __cdecl absl::log_internal::LogMessage::CopyToEncodedBuffer<0>(class std::__Cr::basic_string_view<char, struct std::__Cr::char_traits<char>>) lld-link: error: <root>: undefined symbol: private: static bool __cdecl absl::str_format_internal::FormatArgImpl::Dispatch<class std::__Cr::basic_string<char, struct std::__Cr::char_traits<char>, class std::__Cr::allocator<char>>>(union absl::str_format_internal::FormatArgImpl::Data, class absl::str_format_internal::FormatConversionSpecImpl, void *) lld-link: error: <root>: undefined symbol: private: static bool __cdecl absl::str_format_internal::FormatArgImpl::Dispatch<class std::__Cr::basic_string<wchar_t, struct std::__Cr::char_traits<wchar_t>, class std::__Cr::allocator<wchar_t>>>(union absl::str_format_internal::FormatArgImpl::Data, class absl::str_format_internal::FormatConversionSpecImpl, void *) lld-link: error: <root>: undefined symbol: private: static bool __cdecl absl::str_format_internal::FormatArgImpl::Dispatch<class std::__Cr::basic_string_view<char, struct std::__Cr::char_traits<char>>>(union absl::str_format_internal::FormatArgImpl::Data, class absl::str_format_internal::FormatConversionSpecImpl, void *) lld-link: error: <root>: undefined symbol: private: static bool __cdecl absl::str_format_internal::FormatArgImpl::Dispatch<class std::__Cr::basic_string_view<wchar_t, struct std::__Cr::char_traits<wchar_t>>>(union absl::str_format_internal::FormatArgImpl::Data, class absl::str_format_internal::FormatConversionSpecImpl, void *) lld-link: error: <root>: undefined symbol: private: class absl::LogSink *& __cdecl absl::inlined_vector_internal::Storage<class absl::LogSink *, 16, class std::__Cr::allocator<class absl::LogSink *>>::EmplaceBackSlow<class absl::LogSink *const &>(class absl::LogSink *const &) I am on branch *branch-heads/13.1* I am running the build command from x64 Native Tools Command Prompt on Windows10, MSVCv143 - VS 2022 is installed, also C++ Clang tools for Windows are installed. Any idea how to solve this error, I tried running: * python3 third_party\abseil-cpp\generate_def_files.py *which I saw suggested somewhere in threads, it finished successfully but still getting the same error. -- -- 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 visit https://groups.google.com/d/msgid/v8-users/d2bfac0a-3c83-43f7-8116-0293f9df8bf1n%40googlegroups.com.