Hi everyone,

I'm trying to embed V8 into a C++ project currently and keep encountering 
issues when linking V8. Currently i'm following the instructions on 
https://v8.dev/docs/embed and doing this on Linux. After building V8 with 
these parameters


gn gen out.gn/library --args='is_debug=false is_component_build=false 
v8_enable_i18n_support=false use_custom_libcxx=false is_clang=true 
v8_monolithic=true target_cpu="x64" v8_use_external_startup_data=false'


and attempting to link to the libv8_monolith.a static library it throws a 
bunch of undefined reference errors to the standard library e.g.,

ld.lld: error: undefined symbol: std::basic_ios<char, 
std::char_traits<char>>::init(std::basic_streambuf<char, 
std::char_traits<char>>*)
>>> referenced by logging.cc

I've setup my default compiler to use clang with the LLVM standard library 
and using nm have determined that V8 is being built with clang and the LLVM 
std library since it outputs std::__1:: function symbols.

I've also forced libc++ to be used in the cmake project that is trying to 
link to the V8 library with cmake commands like so

set(CMAKE_CXX_STANDARD_LIBRARIES "-stdlib=libc++")
set(CMAKE_C_FLAGS "-stdlib=libc++")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -stdlib=libc++ 
-lc++abi")

I'm really at a loss at what could be causing this issue because both the 
library and my project should be using the same standard library. Any 
advice?

-- 
-- 
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/fe1ef80b-568d-4c10-9cb8-633273ccd192n%40googlegroups.com.

Reply via email to