在 C++ 中嵌入 V8 导致 "unrecognized external symbol" 与 libc++ 相关的错误

Embeding V8 in C++ causes "unrecognized external symbol" errors related to libcpp

我正在尝试将 v8 嵌入到我的应用程序中(使用 Visual Studio 2019)。首先,我将其构建到 x86 (ia32) 调试静态链接库。我也希望它是单一的。有一些错误,但最终我设法解决了并成功构建了它。我运行 v8编译后测试,结果不错。 接下来,我想使用它,所以我包含了所有必需的头文件和链接的 "v8_monolith.lib" 库文件。但是当我尝试编译我的应用程序时,它给了我很多(大约 4500 个)链接错误,恰好 "unrecognized external symbol" 与 libcpp 相关(例如“__libcpp_debug_function”)。我确定我正确选择了运行时库。我也试图重新编译它几次,但没有帮助。我认为 libcpp 可以正常工作,因为我使用它没有任何问题。

这是我的 args.gn 文件:

is_debug = true
target_cpu = "x86"
v8_enable_backtrace = true
v8_enable_slow_dchecks = true
v8_optimized_debug = false
is_component_build = false
v8_static_library = true
v8_monolithic = true
v8_use_external_startup_data = false

尝试将 use_custom_libcxx = false 添加到 args.gn,应该会有帮助。