Update BUILDING.md

This commit is contained in:
David Chavez 2024-05-17 23:38:28 +02:00 committed by GitHub
parent 7a024eb909
commit 85c5fbcab8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -6,7 +6,7 @@ This guide will help you build the project on your local machine. The process wi
We'll walk you through acquiring these, running the required processes and finally building the project.
### 1. Clone the Zelda64Recomp Repository
## 1. Clone the Zelda64Recomp Repository
This project makes use of submodules so you will need to clone the repository with the `--recurse-submodules` flag.
```bash
@ -15,7 +15,7 @@ git clone --recurse-submodules
# cd /path/to/cloned/repo && git submodule update --init --recursive
```
### 2. Install Dependencies
## 2. Install Dependencies
You will need a few dependencies. For Linux we provide the instructions for Ubuntu, but you can find the equivalent packages for your preferred distro.
@ -27,7 +27,7 @@ cmake ninja libsdl2-dev libgtk-3-dev lld llvm clang-15
choco cmake install ninja sdl2 gtk3 llvm
```
### 3. Creating the ELF file & decompressed ROM
## 3. Creating the ELF file & decompressed ROM
You will need to build [this commit](https://github.com/zeldaret/mm/tree/23beee0717364de43ca9a82957cc910cf818de90) of the Majora's Mask decompilation. Follow their build instructions to generate the ELF file and decompressed ROM. While building you may get the following build error:
```bash
RuntimeError: 'jr' instruction does not have an 'jump label' field
@ -43,7 +43,7 @@ Upon successful build it will generate the two required files. Copy them to the
- `mm.us.rev1.rom_uncompressed.elf`
- `mm.us.rev1.rom_uncompressed.z64`
### 4. Generating the C code
## 4. Generating the C code
Now that you have the required files, we have to build [N64Recomp](https://github.com/Mr-Wiseguy/N64Recomp) and run it to generate the C code to be compiled. The building instructions can be found in that repo. That will build the executables: `N64Recomp` and `RSPRecomp` which you should copy to the root of the Zelda64Recomp repository.
@ -54,16 +54,16 @@ After that, go back to the repository root, and run the following commands:
./RSPRecomp[.exe] njpgdspMain.us.rev1.toml
```
### 5. Building the Project
## 5. Building the Project
Finally, you can build the project! We'll use be using CMake:
```bash
cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=Release # or Debug if you want to debug
cmake -S . -B cmake-build -G Ninja -DCMAKE_BUILD_TYPE=Release # or Debug if you want to debug
cmake --build build-cmake --target Zelda64Recompiled -j$(nproc) --config Release # or Debug
```
### 6. Profit
## 6. Profit
Voilà! You should now have a `Zelda64Recompiled[.exe]` file in the `build-cmake` directory!
_Note: In the game itself, you should be using a standard ROM, not the decompressed one._
_Note: In the game itself, you should be using a standard ROM, not the decompressed one._