Created Compiling (markdown)

bearoso 2019-03-17 19:01:01 -05:00
parent ace810096f
commit 1ece6a6a7b
1 changed files with 42 additions and 0 deletions

42
Compiling.md Normal file

@ -0,0 +1,42 @@
## Windows
Various software and tools are required to compile Snes9x on Windows:
NOTE: Unicode support requires a special zlib build - see the end of the zlib entry
- The current official binary is compiled with Visual Studio 2017, you'll have to create
your own project file for earlier MSVC versions. VS2017 will automatically ask to install
the correct Windows SDK Version (7.1A)
- A recent DirectX SDK:
https://www.microsoft.com/en-us/download/details.aspx?id=23549
- The following modules can all be downloaded automatically by using:
git submodule update --init
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.
* DirectXMath. The source files should reside in `win32/DirectXMath`
* 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).
The zlib source files should reside in `win32/zlib/src`
* libpng (optional, HAVE_LIBPNG define, enabled by default) - the default solution includes
a libpng project that builds appropriately.
The libpng source files should reside in `win32/libpng/src`
* glslang and SPIRV-Cross (optional, USE_SLANG define, enabled by default)
These are needed to build support for .slang shaders. The default solution includes
a series of projects encompassing glslang that build appropriately.
The glslang source files should reside in `win32/glslang/src`
The SPIRV-Cross source files should be placed in `shaders/SPIRV-Cross`
If wish to compile without USE_SLANG, you must remove the files named
`spirv_*.cpp` from the Visual Studio project's Shaders group.
- To compile Snes9x:
Start up VS2017.
Load the Snes9x solution.
Select the desired configuration and build.
The Release configuration may build significantly slower than Debug.
Then you can run it.