Large PDBs enabled

95 views
Skip to first unread message

Bruce Dawson

unread,
Feb 6, 2023, 9:14:22 PM2/6/23
to Chromium-dev
Starting with crrev.com/c/4128591 all Windows Chromium binaries now build with large-page PDBs that support PDBs up to 8 GiB in size. This is necessary because several test binaries' PDBs have already exceeded 4 GiB and Chrome itself was just 5% away.

Fully patched VS 2022 (or VS 2019) can handle these PDBs. Windbg Preview or the latest (Windows 11 SDK) windbg can also handle them, as can Windows Performance Analyzer, and msdia140.dll from VS 2019 or later. If you build Chrome with a locally installed toolchain (if DEPOT_TOOLS_WIN_TOOLCHAIN=0) then you will need to install the Windows 11 SDK version of the Debuggers Tools to get a compatible copy of dbghelp.dll, needed for decoding call stacks on test failures. The header files and libs from the 10.0.20348.0 are still needed for now.

If you have all of these tools up-to-date and you notice PDB-related problems then please reply here.

You can temporarily disable large-page PDBs by setting the "use_large_pdbs" gn arg to false, but this should not be necessary.

The next step will be to update Chromium's build to the Windows 11 SDK.

--
Bruce Dawson, he/him

Ho Cheung

unread,
Feb 7, 2023, 3:34:41 AM2/7/23
to Chromium-dev, bruce...@google.com, chromi...@chromium.org
hello bruce, i am getting the following error, i am currently cross compiling for windows on ubuntu, the error below appears after running gn args command

I have modified the source code of chromium locally, which of my modifications are most likely to cause these errors

Generating files...
ERROR at //build/config/win/visual_studio_version.gni:27:7: Script returned non-zero exit code.
       exec_script("../../vs_toolchain.py", [ "get_toolchain_dir" ], "scope")
       ^----------
Current dir: /root/chromium/src/out/chromium/
Command: python3 /root/chromium/src/build/vs_toolchain.py get_toolchain_dir
Returned 1.
stderr:

Traceback (most recent call last):
   File "/root/chromium/src/build/vs_toolchain.py", line 458, in <module>
     dia_path = os.path.join(NormalizePath(os.environ['GYP_MSVS_OVERRIDE_PATH']),
NameError: name 'NormalizePath' is not defined

See //third_party/angle/gni/angle.gni:54:5: whence it was imported.
     import("//build/config/win/visual_studio_version.gni")
     ^------------------------------------------------- ---
See //BUILD.gn:816:7: which caused the file to be included.
       "//third_party/dawn/src/dawn/tests:dawn_end2end_tests",
       ^------------------------------------------------- ----

Ho Cheung

unread,
Feb 7, 2023, 5:23:40 AM2/7/23
to Chromium-dev, Ho Cheung, bruce...@google.com, chromi...@chromium.org
The problem has been solved, it is caused by the indentation error of the vs_toolchain.py file, and has nothing to do with the upstream modification
Reply all
Reply to author
Forward
0 new messages