Code listing #16 uses the "-f" flag to scripts/bootstrap.sh to "fetch" the software; Code listing #17 calls scripts/bootstrap.sh to do the actual work. The text gave me the impression that the "-f" option would include the actual build work, but it doesn't. Whilst #16 is listed as "(optional)" and #17 doesn't say "(optional)", the text around #16 doesn't explicitly state that the "-f" will *ONLY* fetch, and not extract, configure, and compile the code.
the text right above the codeblock says: If you want to download the source code first and later bootstrap the system ...
Yes, I was stupid to misinterpret the document, but - as an outsider to the Gentoo process, I would have found an explicit statement that "-f downloads; then run without -f to install before going to the next step" would have saved the resulting confusion in diagnosing why the ncurses build failed (no c++ installed). If you're happy with the docs as-is, that's okay, but I just wanted to suggest that a little clarification that -f *ONLY* downloads and that the optional "bootstrap.sh -f" must still be followed by the mandataory "bootstrap.sh" could help users to avoid the (to noobs) very confusing ncurses error
The document sais """ If you want to download the source code first and later bootstrap the system (for instance because you don't want to have your internet connection open during the compilation) use the -f option of the bootstrap script, which will fetch (hence the letter "f") all source code for you. """ It doesn't say "fetch first" or anything, just "will fetch all source code for you", so I don't think we really need to add any more verbosity here.