Compiling on Linux - WryOpussum/sm64ex-coop-wiki-update GitHub Wiki
Do not attempt to use this guide to compile Windows binaries under WSL or Linux. It will not work. Use the "Compiling on Windows" guide.
git clone https://github.com/djoslin0/sm64ex-coop.git
cd sm64ex-coop
For each version (jp/us/eu) that you want to build an executable for, put an existing ROM at
./baserom.<version>.z64
for asset extraction.
NOTE: Only the us version is currently supported on coop.
The build system has the following package requirements:
- python3 >= 3.6
- libsdl2-dev
- libglew-dev
- git
sudo apt install build-essential git python3 libglew-dev:i386 libsdl2-dev:i386
sudo apt install build-essential git python3 libglew-dev libsdl2-dev
sudo dnf install make gcc python3 glew-devel SDL2-devel
sudo dnf install python3.i686 glew-devel.i686 SDL2-devel.i686
There is an AUR package (courtesy of @narukeh) avaliable under the name sm64pc-git. Install it using your AUR helper of choice.
If you want to build it yourself:
sudo pacman -S base-devel python sdl2 glew
sudo xbps-install -S base-devel python3 SDL2-devel glew-devel
sudo xbps-install -S base-devel python3 SDL2-devel-32bit glew-devel-32bit
It is recommended you create a nix-shell enviroment for compiling it. Create a file called whatever you want.nix
and insert
{ pkgs ? import <nixpkgs> {} }:
pkgs.mkShell {
# nativeBuildInputs is usually what you want -- tools you need to run
nativeBuildInputs = [ pkgs.gcc pkgs.python310 pkgs.SDL2 pkgs.glew pkgs.zlib pkgs.git];
}
then run nix-shell name.nix
Run make
to build. To turn certain features on and off, append any needed build flags to your make
invocation like so:
make -j4
This page is forked from sm64ex's wiki page.