2.4 KiB
@page compiling Installing mk64 Decomp
Build Instructions
The build system has the following package requirements:
binutils-mips >= 2.27
python3 >= 3.6
libaudiofile
[TOC]
To add submodules run git submodule update --init --recursive after cloning.
Linux
sudo apt install build-essential pkg-config git binutils-mips-linux-gnu python3 zlib1g-dev libaudiofile-dev libcapstone-dev
Arch
sudo pacman -S base-devel capstone python
Install the following AUR package:
- mips64-elf-binutils (AUR)
Review the n64decomp/sm64 readme for instructions to compile in other distributions.
Windows
N64 decomp does not mesh well with Windows. However, this process has been refined to be as painless as possible. WSL is a great alternative if issues arise.
Requirements
- Clone the repo or download the zip on your computer
- Dowload toolchain from here
Setup
- copy from mips-tools-chain-windows.zip the folder
mingw64into tools folder in the repo - Open a terminal (cmd or powershell) in the repo folder and run
"tools\mingw64\w64devkit.exe"and aftermake - Wait for the build to finish and Enjoy!
macOS
Install Homebrew, then install the following dependencies:
brew update
brew install python3 capstone coreutils make pkg-config tehzz/n64-dev/mips64-elf-binutils
Build using gmake ensuring homebrew make is used instead of the old macOS system make.
Docker
Build the Docker image:
docker build -t mk64 .
When building and using other tools, append the following in front of every command you run:
docker run --rm -v .:/mk64 mk64
For example:
docker run --rm -v .:/mk64 mk64 make
Building US
Place a US version of Mario Kart 64 called baserom.us.z64 into the project folder for asset extraction.
Run the following commands after pulling:
make -j
Building EU
Building EU requires US to be built first. See above.
mk64 decomp supports two EU versions
- EU 1.0
eu-1.0 - EU 1.1
eu-final
Build using
make -j VERSION=eu-1.0
or
make -j VERSION=eu-final
First-diff/diff commands for EU
python3 first-diff.py --eu
./diff <function> -eu