update COMPILING.md with notes regarding compiling the project on windows and using the right version of .net framework
1.9 KiB
Windows
Standalone
- Open the solution in Visual Studio 2019
- Set "GUI.NET" as the Startup Project
- Compile as Release/x64 or Release/x86
- Run Mesen.exe
Note: When loading the the solution in Visual Studio make sure all the projects are loaded successfully. Note: If you get an error about the project targeted .NET Framework 4.5 chose to download the missing packages then install ".NET Framework 4.5 targeting pack" from the Visual Studio Installer.
Libretro
- Open the solution in Visual Studio 2019
- Compile as Libretro/x64 or Libretro/x86
- Use the "mesen_libretro.dll" file in bin/(x64 or x86)/Libretro/mesen_libretro.dll
Note: It's also possible to build the Libretro core via MINGW by using the makefile in the Libretro subfolder.
Linux
Standalone
To compile Mesen under Linux you will need clang 7.0+ or gcc 9.0+ (Mesen requires a C++17 compiler with support for the filesystem API.) Additionally, Mesen has the following dependencies:
- Mono 5.18+ (package: mono-devel)
- SDL2 (package: libsdl2-dev)
Note: Mono 5.18 or higher is recommended, some older versions of Mono (e.g 4.2.2) have some stability and performance issues which can cause crashes and slow down the UI. The default Mono version in Ubuntu 18.04 is 4.6.2 (which also causes some layout issues in Mesen). To install the latest version of Mono, follow the instructions here: https://www.mono-project.com/download/stable/#download-lin
The makefile contains some more information at the top. Running "make" will build the x64 version by default, and then "make run" should start the emulator. LTO is supported under clang, which gives a large performance boost (25-30%+), so turning it on is highly recommended (see makefile for details).
Libretro
To compile the Libretro core you will need a version of clang/gcc that supports C++14. Run "make" from the "Libretro" subfolder to build the Libretro core.