File tree Expand file tree Collapse file tree 1 file changed +11
-1
lines changed Expand file tree Collapse file tree 1 file changed +11
-1
lines changed Original file line number Diff line number Diff line change @@ -87,7 +87,17 @@ but `stageN-component` never has enough components to be usable (since it only h
87
87
Copying these artifacts from ` stage(N-1)-component ` to ` stageN `
88
88
is called _ uplifting_ the artifacts to ` stageN ` .
89
89
90
- <!-- TODO: say _why_ build-stage exists and is separate. -->
90
+ ### Why have ` link-stage ` at all?
91
+
92
+ ` stage0/bin/rustc ` can't open an rlib from stage1-* or vice-versa.
93
+ They are completely separate worlds, and ` link-stage ` reflects those worlds quite directly.
94
+ Say you want to build a custom driver and you've run
95
+ ` rustup toolchain link build/*/stage1 ` : you have to run
96
+ ` x.py build --stage 1 src/librustc_driver ` to have it available.
97
+ The stage number corresponds to the "world" you have to be in to use it.
98
+ If this used ` run-stage ` instead, you'd need ` x.py build --stage 1 ` to build
99
+ a regular program, but ` x.py build --stage 2 src/librustc_driver ` to build a
100
+ custom driver.
91
101
92
102
## Complications of bootstrapping
93
103
You can’t perform that action at this time.
0 commit comments