Command explanations make BOOT_LDFLAGS=-static: This is the equivalent to make LDFLAGS=-static as we use with other packages to compile them statically. --prefix=/static: This is NOT a typo. GCC hard codes some paths while compiling and so we need to pass /static as the prefix during ./configure. We pass the real install prefix during the make install command later. --enable-languages=c,c++: This only builds the C and C++ compilers and not the other available compilers as they are, on the average, not often used. If those other compilers are needed, the --enable-languages parameter can be omitted. --enable-threads=posix: This enables C++ exception handling for multithreaded code. ln -s gcc $LFS/static/bin/cc: This creates the $LFS/static/bin/gcc symlink which some packages need.