2.5 KiB
Prerequisites
Linux | macOS | Windows 10 (build 18917+) | Windows 10 (1709+) | Windows Vista, 7, 8, 8.1, and 10 (1507, 1511, 1607, 1703) |
---|---|---|---|---|
none | Xcode Command Line Tools package | Windows Subsystem for Linux 2 | Windows Subsystem for Linux | MSYS2 (includes devkitPro) |
The prerelease version of the Linux subsystem available in the 1607 and 1703 releases of Windows 10 is obsolete so consider uninstalling it.
Make sure that the make
, git
, gcc-core
, gcc-g++
, and libpng-devel
packages are installed.
If you are not using MSYS2, install the devkitARM toolchain of devkitPro and add its environment variables.
export DEVKITPRO=/opt/devkitpro
echo "export DEVKITPRO=$DEVKITPRO" >> ~/.bashrc
export DEVKITARM=$DEVKITPRO/devkitARM
echo "export DEVKITARM=$DEVKITARM" >> ~/.bashrc
Installation
To set up the repository:
git clone https://github.com/pret/pokeemerald
git clone https://github.com/pret/agbcc
cd ./agbcc
./build.sh
./install.sh ../pokeemerald
cd ../pokeemerald
./build_tools.sh
To build pokeemerald.gba:
make -j$(nproc)
To confirm it matches the official ROM image while building, do this instead:
make compare -j$(nproc)
If only .c
or .s
files were changed, 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.
make -j$(nproc) NODEP=1
Note: If the build command is not recognized on Linux, including the Linux environment used within Windows, run nproc
and replace $(nproc)
with the returned value (e.g.: make -j4
). Because nproc
is not available on macOS, the alternative is sysctl -n hw.ncpu
.
Note 2: If the base tools are not found on macOS in new Terminal sessions after the first successful build, run echo "if [ -f ~/.bashrc ]; then . ~/.bashrc; fi" >> ~/.bash_profile
once to prevent the issue from occurring again.