README: Update
Vicki Pfau vi@endrift.com
Sat, 03 Nov 2018 15:39:00 -0700
1 files changed,
41 insertions(+),
1 deletions(-)
jump to
M
README.md
→
README.md
@@ -107,7 +107,31 @@
Compiling --------- -Compiling requires using CMake 2.8.11 or newer. GCC and Clang are both known to work to compile mGBA, but Visual Studio 2013 and older are known not to work. Support for Visual Studio 2015 and newer is coming soon. To use CMake to build on a Unix-based system, the recommended commands are as follows: +Compiling requires using CMake 3.1 or newer. GCC and Clang are both known to work to compile mGBA, but Visual Studio 2013 and older are known not to work. Support for Visual Studio 2015 and newer is coming soon. + +#### Docker building + +The recommended way to build for most platforms is to use Docker. Several Docker images are provided that contain the requisite toolchain and dependencies for building mGBA across several platforms. + +To use a Docker image to build mGBA, simply run the following command while in the root of an mGBA checkout: + + docker run --rm -t -v $PWD:/home/mgba/src mgba/windows:w32 + +This will produce a `build-win32` directory with the build products. Replace `mgba/windows:w32` with another Docker image for other platforms, which will produce a corresponding other directory. The following Docker images available on Docker Hub: + +- mgba/3ds +- mgba/switch +- mgba/ubuntu:xenial +- mgba/ubuntu:bionic +- mgba/ubuntu:cosmic +- mgba/vita +- mgba/wii +- mgba/windows:w32 +- mgba/windows:w64 + +#### *nix building + +To use CMake to build on a Unix-based system, the recommended commands are as follows: mkdir build cd build@@ -152,6 +176,22 @@ cmake .. -G "MSYS Makefiles"
make Please note that this build of mGBA for Windows is not suitable for distribution, due to the scattering of DLLs it needs to run, but is perfect for development. However, if distributing such a build is desired (e.g. for testing on machines that don't have the MSYS2 environment installed), running `cpack -G ZIP` will prepare a zip file with all of the necessary DLLs. + +#### Toolchain building + +If you have devkitARM (for 3DS), devkitPPC (for Wii), devkitA64 (for Switch), or vitasdk (for PS Vita), you can use the following commands for building: + + mkdir build + cd build + cmake -DCMAKE_TOOLCHAIN_FILE=../src/platform/3ds/CMakeToolchain.txt .. + make + +Replace the `-DCMAKE_TOOLCHAIN_FILE` parameter for the following platforms: + +- 3DS: `../src/platform/3ds/CMakeToolchain.txt` +- Switch: `../src/platform/switch/CMakeToolchain.txt` +- Vita: `../src/platform/psp2/CMakeToolchain.vitasdk` +- Wii: `../src/platform/wii/CMakeToolchain.txt` ### Dependencies