【问题标题】:Google V8 - Neither v8.dll nor v8.dll.lib getting built in release modeGoogle V8 - v8.dll 和 v8.dll.lib 均未在发布模式下构建
【发布时间】:2016-12-17 15:01:08
【问题描述】:

我已按照Building with GN 的说明使用 Visual Studio 2015 在 Windows 10 上构建 Google V8。我做了什么:

获取V8,下载并解压depot-tools

C:\build-depot> set DEPOT_TOOLS_WIN_TOOLCHAIN=0
C:\build-depot> gclient
C:\build-depot> set GYP_MSVS_VERSION=2015
C:\build-depot> fetch v8

正在生成构建文件...

C:\build-depot\v8> python tools\dev\v8gen.py x64.debug
C:\build-depot\v8> python tools\dev\v8gen.py x64.release

...和编译

C:\build-depot\v8> ninja -C out.gn\x64.debug
C:\build-depot\v8> ninja -C out.gn\x64.release

debug模式下生成的静态库:

C:\depot_tools\v8\out.gn\x64.debug>dir /s/b *.lib
C:\depot_tools\v8\out.gn\x64.debug\cctest.lib
C:\depot_tools\v8\out.gn\x64.debug\icui18n.dll.lib
C:\depot_tools\v8\out.gn\x64.debug\icuuc.dll.lib
C:\depot_tools\v8\out.gn\x64.debug\mkpeephole.lib
C:\depot_tools\v8\out.gn\x64.debug\mksnapshot.lib
C:\depot_tools\v8\out.gn\x64.debug\v8.dll.lib
C:\depot_tools\v8\out.gn\x64.debug\v8_libbase.dll.lib
C:\depot_tools\v8\out.gn\x64.debug\v8_libplatform.dll.lib
C:\depot_tools\v8\out.gn\x64.debug\obj\build\config\sanitizers\options_sources.lib
C:\depot_tools\v8\out.gn\x64.debug\obj\testing\gmock\gmock.lib
C:\depot_tools\v8\out.gn\x64.debug\obj\testing\gmock\gmock_main.lib
C:\depot_tools\v8\out.gn\x64.debug\obj\testing\gtest\gtest.lib

发布模式下生成的静态库:

C:\depot_tools\v8\out.gn\x64.release\obj\v8_libbase.lib
C:\depot_tools\v8\out.gn\x64.release\obj\v8_libplatform.lib
C:\depot_tools\v8\out.gn\x64.release\obj\build\config\sanitizers\options_sources.lib
C:\depot_tools\v8\out.gn\x64.release\obj\testing\gmock\gmock.lib
C:\depot_tools\v8\out.gn\x64.release\obj\testing\gmock\gmock_main.lib
C:\depot_tools\v8\out.gn\x64.release\obj\testing\gtest\gtest.lib
C:\depot_tools\v8\out.gn\x64.release\obj\third_party\icu\icui18n.lib
C:\depot_tools\v8\out.gn\x64.release\obj\third_party\icu\icuuc.lib

问题

正如您在上面的列表中看到的,v8.dll.lib 是在调试模式下生成的,但在发布模式下会丢失,顺便说一句,v8.dll 也是如此。两个问题:

  1. 为什么这些库不在发布模式下生成?
  2. 如果缺少这些库,我应该如何在发布模式下链接到 V8?

提前致谢!

【问题讨论】:

    标签: visual-studio visual-c++ v8


    【解决方案1】:

    默认情况下,发布模式构建是静态链接的,而不是创建 v8.dll 共享库。您可以通过运行 gn args out.gn\x64.release 并添加行 is_component_build = true 来更改它,然后保存并关闭文件,然后重新构建。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-07-23
      • 1970-01-01
      • 2023-01-30
      • 1970-01-01
      • 1970-01-01
      • 2020-08-13
      • 2011-08-22
      相关资源
      最近更新 更多