The BeagleBoard is fast by embedded standards and it will give your embedded system a run for its money, but it is not designed for some complicated tasks, such as compiling piles of source code to get an executable Linux kernel. Therefore, the widely-accepted practice for embedded system development is to develop and build software on a powerful desktop PC system (host PC) and then transfer the resulting executable software to the target system (which is the BeagleBoard in this book).
Compared to the target embedded system, the host PC usually has a much more powerful CPU and huge memory. In theory, you can write your code and compile them at your target hardware, the BeagleBoard. This approach is called native complier, as you have a compiler installed at the BeagleBoard to build your software. However, compiling is time and resource consuming, especially when you are developing large software. It is not a reasonable...