-
Notifications
You must be signed in to change notification settings - Fork 13.6k
Closed
Labels
A-docsArea: Documentation for any part of the project, including the compiler, standard library, and toolsArea: Documentation for any part of the project, including the compiler, standard library, and toolsC-enhancementCategory: An issue proposing an enhancement or a PR with one.Category: An issue proposing an enhancement or a PR with one.E-help-wantedCall for participation: Help is requested to fix this issue.Call for participation: Help is requested to fix this issue.P-mediumMedium priorityMedium priority
Description
I've been finding that there are a lot of undocumented things you have to learn if you want to get started hacking on rustc. If we want to encourage people to get involved -- and we do! -- we should try to ensure that things are as well-documented as possible. I think that these docs should all be on The Rust Forge.
This issue is intended as a clearing house to track things that it would be useful to document. Here are some suggestions. I will try to move items from comments up here into the top issue (or feel free to do so yourself, if you have write permissions). Also feel free to open a separate issue on a particular topic (and link to it from here).
- How to build the compiler and how to run the compiler you built
- First off, explaining about
--stage 1
and--incremental
arguments - Then, once you run
./x.py build --incremental
, it's not obvious where to find compiled executable or how to run it - For bonus points, we could publish some kind of rustup toolchain instructions, so that you can just type
rustc
and have it work (that's how my setup works, at least, I should document it publicly)
- First off, explaining about
- Advice on effective use of
RUST_LOG
- Common modules you may want to log
- Direct the output into a file
-Z verbose
for more details
- A list of the various debugging outputs the compiler supports (--unpretty, MIR dump, CGU partitions, dep-graph etc) (from this comment)
- which commandline arguments or environment variables are needed to generate them
- the kind of filtering they support (e.g. just dump MIR for one function)
mandeep and max-sixtyhanna-kruppe, wesleywiser, cramertj, malbarbo, mgattozzi and 1 more
Metadata
Metadata
Assignees
Labels
A-docsArea: Documentation for any part of the project, including the compiler, standard library, and toolsArea: Documentation for any part of the project, including the compiler, standard library, and toolsC-enhancementCategory: An issue proposing an enhancement or a PR with one.Category: An issue proposing an enhancement or a PR with one.E-help-wantedCall for participation: Help is requested to fix this issue.Call for participation: Help is requested to fix this issue.P-mediumMedium priorityMedium priority