Make sure that there is an environment variable called DEVKITARM with the path of the directory before the "bin" directory containing "arm-none-eabi-as", "arm-none-eabi-cpp", "arm-none-eabi-ld" and "arm-none-eabi-objcopy".
Then get the compiler from https://github.com/pret/agbcc and run the following commands.
Then get the compiled tools from https://github.com/pret/pokeruby-tools. Copy the `tools/` folder over the `tools/` folder in your pokeemerald directory.
After the first build, subsequent builds are faster. You can further speed up the build:
## Parallel build
This significantly speeds up the build on modern machines.
By default `make` only runs a single thread. You can tell `make` to run on multiple threads with `make -j`. See the manfile for usage (`man make`).
The optimal value for `-j` is the number of logical cores on your machine. You can run `nproc` to see the exact number.
```
$ nproc
8
```
If you have 8 cores, run: `make -j8`
`-j` on its own will spawn a new thread for each job. A clean build will have thousands of jobs, which will be slower than not using -j at all.
## Disable the dependency scanning
If you've only changed `.c` or `.s` files, you can turn off the dependency scanning temporarily. Changes to any other files will be ignored, and the build will either fail or not reflect those changes.