Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(639)

Unified Diff: docs/windows_build_instructions.md

Issue 2014753002: Update build instructions for Linux and Windows. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « docs/linux_faster_builds.md ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: docs/windows_build_instructions.md
diff --git a/docs/windows_build_instructions.md b/docs/windows_build_instructions.md
index 826a4c42ef554c21e6e56b9c9b7a190558705e8c..0c3d6de2ef99bd76e41a0c1edb13d0f054ef8724 100644
--- a/docs/windows_build_instructions.md
+++ b/docs/windows_build_instructions.md
@@ -1,5 +1,12 @@
# Windows Build Instructions
+## Common checkout instructions
+
+This page covers Windows-specific setup and configuration. The
+[general checkout
+instructions](http://dev.chromium.org/developers/how-tos/get-the-code) cover
+installing depot tools and checking out the code via git.
+
## Setting up Windows
You must set your Windows system locale to English, or else you may get
@@ -13,11 +20,7 @@ supported.
You must have Windows 7 x64 or later. x86 OSs are unsupported.
-## Step 1: Getting depot_tools
-
-Get [depot\_tools](http://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html#_setting_up).
-
-## Step 2: Getting the compiler toolchain
+## Getting the compiler toolchain
Follow the appropriate path below:
@@ -48,8 +51,7 @@ authentication instructions. **Note that you must authenticate with your
@google.com credentials**, not @chromium.org. Enter "0" if asked for a
project-id.
-Once you've done this, the toolchain will be installed automatically for
-you in Step 3, below (near the end of the step).
+Run: `gclient sync` again to download and install the toolchain automatically.
The toolchain will be in `depot_tools\win_toolchain\vs_files\<hash>`, and windbg
can be found in `depot_tools\win_toolchain\vs_files\<hash>\win_sdk\Debuggers`.
@@ -57,31 +59,35 @@ can be found in `depot_tools\win_toolchain\vs_files\<hash>\win_sdk\Debuggers`.
If you want the IDE for debugging and editing, you will need to install
it separately, but this is optional and not needed to build Chromium.
-## Step 3: Getting the Code
+## Using the Visual Studio IDE
-Follow the steps to [check out the
-code](https://www.chromium.org/developers/how-tos/get-the-code) (largely
-`fetch chromium`).
+If you want to use the Visual Studio IDE, use the `--ide` command line
+argument to `gn gen` when you generate your output directory (as described on
+the [get the code](http://dev.chromium.org/developers/how-tos/get-the-code)
+page):
-## Step 4: Building
+```gn gen --ide=vs out\Default
+devenv out\Default\all.sln
+```
-Build the target you are interested in.
+GN will produce a file `all.sln` in your build directory. It will internally
+use Ninja to compile while still allowing most IDE functions to work (there is
+no native Visual Studio compilation mode). If you manually run "gen" again you
+will need to resupply this argument, but normally GN will keep the build and
+IDE files up-to-date automatically when you build.
-```shell
-ninja -C out\Debug chrome
-```
+The generated solution will contain several thousand projects and will be very
+slow to load. Use the `--filters` argument to restrict generating project files
+for only the code you're interested in, although this will also limit what
+files appear in the project explorer. A minimal solution that will let you
+compile and run Chrome in the IDE but will not show any source files is:
+
+```gn gen --ide=vs --filters=//chrome out\Default```
-Alternative (Graphical user interface): Open a generated .sln
-file such as chrome.sln, right-click the chrome project and select build.
-This will invoke the real step 4 above. Do not build the whole solution
-since that conflicts with ninja's build management and everything will
-explode.
-Substitute the build directory given to `-C` with `out\Debug_x64` for
-[64-bit
-builds](https://www.chromium.org/developers/design-documents/64-bit-support)
-in GYP, or whatever build directory you have configured if using GN.
+There are other options for controlling how the solution is generated, run `gn
+help gen` for the current documentation.
-### Performance tips
+## Performance tips
1. Have a lot of fast CPU cores and enough RAM to keep them all busy.
(Minimum recommended is 4-8 fast cores and 16-32 GB of RAM)
@@ -89,11 +95,9 @@ in GYP, or whatever build directory you have configured if using GN.
antivirus and indexing software.
3. Store the build tree on a fast disk (preferably SSD).
4. If you are primarily going to be doing debug development builds, you
- should use the component build:
- - for [GYP](https://www.chromium.org/developers/gyp-environment-variables)
- set `GYP_DEFINES=component=shared_library`
- - for [GN](https://www.chromium.org/developers/gn-build-configuration),
- set the build arg `is_component_build = true`.
+ should use the component build. Set the [build
+ arg](https://www.chromium.org/developers/gn-build-configuration)
+ `is_component_build = true`.
This will generate many DLLs and enable incremental linking, which makes
linking **much** faster in Debug.
« no previous file with comments | « docs/linux_faster_builds.md ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698