mkxp-z/libretro/README.md
刘皓 41fc9bf7c7
Pin wasm2c version in libretro builds
To prevent incompatibilities between wasm2c and the custom wasm-rt
implementation.
2025-05-01 00:53:26 -04:00

46 lines
1.5 KiB
Markdown

The build process for the libretro core is divided into two stages.
# Stage 1
All the files produced by this stage are platform-agnostic, so you can run this build stage on any computer, regardless of which operating system or CPU architecture the libretro core is for.
Required software:
* C and C++ compilers
* GNU Make
* GNU Autotools
* GNU Bison
* [Git](https://git-scm.com)
* [curl](https://curl.se)
* [Info-ZIP's Zip](https://infozip.sourceforge.net/Zip.html) (the `zip` package found in many package managers)
* [WASI SDK](https://github.com/WebAssembly/wasi-sdk) (currently you need WASI SDK version 21; later versions don't work yet)
* [Binaryen](https://github.com/WebAssembly/binaryen)
* Either [Universal Ctags](https://github.com/universal-ctags/ctags) or [Exuberant Ctags](https://ctags.sourceforge.net)
Go to the directory that this README.md is in and run this command, filling in the paths to WASI SDK, `wasm-opt` from Binaryen and `ctags` from Universal Ctags or Exuberant Ctags accordingly:
```
make WASI_SDK=/path/to/wasi-sdk WASM_OPT=/path/to/binaryen/bin/wasm-opt CTAGS=/path/to/ctags
```
This will produce the directory "libretro/build/libretro-stage1".
# Stage 2
This stage produces the actual core file.
Required software:
* C and C++ compilers
* [Git](https://git-scm.com)
* [Meson](https://mesonbuild.com)
* [Ninja](https://ninja-build.org)
* [CMake](https://cmake.org)
No software libraries are required other than the system libraries.
Go to the root directory of this repository and run:
```
meson setup build -Dlibretro=true
cd build
ninja
```