mirror of https://github.com/snes9xgit/snes9x.git
Updated Compiling (markdown)
parent
0537979331
commit
10835b8918
25
Compiling.md
25
Compiling.md
|
@ -15,7 +15,7 @@ NOTE: Unicode support requires a special zlib build - see the end of the zlib en
|
||||||
in the cloned Snes9x git directory, or by using git GUI tools to do the same.
|
in the cloned Snes9x git directory, or by using git GUI tools to do the same.
|
||||||
This is the recommended method of installing these dependencies.
|
This is the recommended method of installing these dependencies.
|
||||||
|
|
||||||
* DirectXMath. The source files should reside in `win32/DirectXMath`
|
* ~~DirectXMath. The source files should reside in `win32/DirectXMath`~~ This is no longer used with version 1.62.
|
||||||
|
|
||||||
* zlib (optional, ZLIB define, enabled by default) - the default solution includes a zlib
|
* zlib (optional, ZLIB define, enabled by default) - the default solution includes a zlib
|
||||||
project that builds appropriately (force includes `_tfwopen.h` for unicode support in s9x).
|
project that builds appropriately (force includes `_tfwopen.h` for unicode support in s9x).
|
||||||
|
@ -28,8 +28,8 @@ NOTE: Unicode support requires a special zlib build - see the end of the zlib en
|
||||||
* glslang and SPIRV-Cross (optional, USE_SLANG define, enabled by default)
|
* glslang and SPIRV-Cross (optional, USE_SLANG define, enabled by default)
|
||||||
These are needed to build support for .slang shaders. The default solution includes
|
These are needed to build support for .slang shaders. The default solution includes
|
||||||
a series of projects encompassing glslang that build appropriately.
|
a series of projects encompassing glslang that build appropriately.
|
||||||
The glslang source files should reside in `shaders/glslang`
|
The glslang source files should reside in `external/glslang` or `shaders/glslang` on 1.61 and earlier.
|
||||||
The SPIRV-Cross source files should be placed in `shaders/SPIRV-Cross`
|
The SPIRV-Cross source files should be placed in `external/SPIRV-Cross` or `shaders/SPIRV-Cross` on 1.61 and earlier.
|
||||||
|
|
||||||
If wish to compile without USE_SLANG, you must remove the files named
|
If wish to compile without USE_SLANG, you must remove the files named
|
||||||
`spirv_*.cpp` from the Visual Studio project's Shaders group.
|
`spirv_*.cpp` from the Visual Studio project's Shaders group.
|
||||||
|
@ -48,7 +48,7 @@ Requirements:
|
||||||
- SDL 2.0
|
- SDL 2.0
|
||||||
- X11, even if only using Wayland
|
- X11, even if only using Wayland
|
||||||
- libepoxy
|
- libepoxy
|
||||||
- meson
|
- CMake (meson for older versions)
|
||||||
|
|
||||||
Optional:
|
Optional:
|
||||||
- PulseAudio
|
- PulseAudio
|
||||||
|
@ -72,12 +72,23 @@ snes9x$ git init && git submodule update --init --recursive
|
||||||
```
|
```
|
||||||
Otherwise, you will need to place the glslang source files in `shaders/glslang` and the SPIRV-Cross source files in the `shaders/SPIRV-Cross` directory manually.
|
Otherwise, you will need to place the glslang source files in `shaders/glslang` and the SPIRV-Cross source files in the `shaders/SPIRV-Cross` directory manually.
|
||||||
|
|
||||||
Building with meson:
|
1. Use the appropriate configure tool to generate build files. Only this first step is different. The rest of the build process will use the "ninja" program.
|
||||||
1. Change to the `gtk` directory and run meson:
|
|
||||||
|
**Configuring with CMake:**
|
||||||
|
|
||||||
|
Newer versions have replaced meson with CMake.
|
||||||
|
Change to the `gtk` directory and run `cmake`.
|
||||||
|
```
|
||||||
|
snes9x/gtk$ cmake -G Ninja -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -S . -B build
|
||||||
|
```
|
||||||
|
|
||||||
|
**Building with meson:** *for older versions that have a meson.build file*
|
||||||
|
|
||||||
|
Change to the `gtk` directory and run meson:
|
||||||
```
|
```
|
||||||
snes9x/gtk$ meson build --prefix=/usr --buildtype=release --strip
|
snes9x/gtk$ meson build --prefix=/usr --buildtype=release --strip
|
||||||
```
|
```
|
||||||
A list of options can be found in `meson_options.txt`. Most will be autodetected. If you wish to enable dangerous hacks in the UI, that must be done by supplying the respective option.
|
A list of options can be found in `meson_options.txt`. Most will be autodetected.
|
||||||
|
|
||||||
2. Build with ninja:
|
2. Build with ninja:
|
||||||
```
|
```
|
||||||
|
|
Loading…
Reference in New Issue