| # GN Frequently Asked Questions | |
| [TOC] | |
| ## Where is the GN documentation? | |
| GN has extensive built-in help, so you can run `gn help`, but you can | |
| also see all of the help on [the reference page](reference.md). See | |
| also the [quick start](quick_start.md) guide and the [language and | |
| operation details](language.md). | |
| ## Can I generate XCode or Visual Studio projects? | |
| You can generate skeleton (or wrapper) projects for Xcode, Visual Studio, | |
| QTCreator, and Eclipse that will list the files and targets in the | |
| build, but use Ninja to do the actual build. You cannot generate "real" | |
| projects that look like native ones like GYP could. | |
| Run `gn help gen` for more details. | |
| ## How do I generate common build variants? | |
| In GN, args go with a build directory rather than being global in the | |
| environment. To edit the args for your `out/Default` build directory: | |
| ``` | |
| gn args out/Default | |
| ``` | |
| You can set variables in that file: | |
| * The default is a debug build. To do a release build add | |
| `is_debug = false` | |
| * The default is a static build. To do a component build add | |
| `is_component_build = true` | |
| * The default is a developer build. To do an official build, set | |
| `is_official_build = true` | |
| * The default is Chromium branding. To do Chrome branding, set | |
| `is_chrome_branded = true` | |
| ## How do I do cross-compiles? | |
| GN has robust support for doing cross compiles and building things for | |
| multiple architectures in a single build. | |
| See [GNCrossCompiles](cross_compiles.md) for more info. | |
| ## Can I control what targets are built by default? | |
| Yes! If you create a group target called "default" in the top-level (root) | |
| build file, i.e., "//:default", GN will tell Ninja to build that by | |
| default, rather than building everything. | |
| ## Are there any public presentations on GN? | |
| [There's at least one](https://docs.google.com/presentation/d/15Zwb53JcncHfEwHpnG_PoIbbzQ3GQi_cpujYwbpcbZo/edit?usp=sharing), from 2015. There | |
| haven't been big changes since then apart from moving it to a standalone | |
| repo, so it should still be relevant. |