From c64dd259b9eff76068530bf3498d23152bab1bc1 Mon Sep 17 00:00:00 2001 From: Rafael Kitover Date: Tue, 20 Aug 2019 07:31:38 +0000 Subject: [PATCH] Update README.md Fix Visual Studio instructions. Add links for all dependencies. Fix grammar/omissions etc. Signed-off-by: Rafael Kitover --- README.md | 46 +++++++++++++++++++++++++++------------------- 1 file changed, 27 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 024370b62..f93396a5b 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,11 @@ - [Visual Boy Advance - M](#visual-boy-advance---m) + - [Note for Windows Users](#note-for-windows-users) - [Building](#building) + - [Building a Libretro core](#building-a-libretro-core) + - [Visual Studio Support](#visual-studio-support) + - [Dependencies](#dependencies) - [Cross compiling for 32 bit on a 64 bit host](#cross-compiling-for-32-bit-on-a-64-bit-host) - [Cross Compiling for Win32](#cross-compiling-for-win32) - [CMake Options](#cmake-options) @@ -15,14 +19,14 @@ [![Join the chat at https://gitter.im/visualboyadvance-m/Lobby](https://badges.gitter.im/visualboyadvance-m/Lobby.svg)](https://gitter.im/visualboyadvance-m/Lobby) -[![Build Status](https://travis-ci.org/visualboyadvance-m/visualboyadvance-m.svg?branch=master)](https://travis-ci.org/visualboyadvance-m/visualboyadvance-m) -[![Build status](https://ci.appveyor.com/api/projects/status/5ckx25vct1q1ovfc?svg=true)](https://ci.appveyor.com/project/ZachBacon65337/visualboyadvance-m-2ys5r) +[![travis](https://travis-ci.org/visualboyadvance-m/visualboyadvance-m.svg?branch=master)](https://travis-ci.org/visualboyadvance-m/visualboyadvance-m) +[![appveyor](https://ci.appveyor.com/api/projects/status/5ckx25vct1q1ovfc?svg=true)](https://ci.appveyor.com/project/ZachBacon65337/visualboyadvance-m-2ys5r) # Visual Boy Advance - M Game Boy Advance Emulator -Homepage and Forum: http://vba-m.com +The Forum is here: https://vba-m.com/forums/ Windows and Mac builds are in the [releases tab](https://github.com/visualboyadvance-m/visualboyadvance-m/releases). @@ -61,9 +65,10 @@ make -j`nproc` ``` `./installdeps` is supported on MSys2, Linux (Debian/Ubuntu, Fedora, Arch, -Solus and RHEL/CentOS) and Mac OS X (homebrew, macports or fink.) +Solus, OpenSUSE, Gentoo and RHEL/CentOS) and Mac OS X (homebrew, macports or +fink.) -The Ninja cmake generator is also now supported, including on msys2 and Visual Studio. +The Ninja cmake generator is also now supported (except for Visual Studio.) ## Building a Libretro core @@ -76,7 +81,7 @@ $ make Copy vbam_libretro.so to your RetroArch cores directory. ``` -### Visual Studio Support +## Visual Studio Support For visual studio, dependency management is handled automatically with vcpkg, just clone the repository with git and build with cmake. You can do this from @@ -93,10 +98,13 @@ To build in the visual studio command prompt, use something like this: mkdir vsbuild cd vsbuild cmake .. -DVCPKG_TARGET_TRIPLET=x64-windows -msbuild /m .\ALL_BUILD.vcxproj +msbuild /m .\ALL_BUILD.vcxproj -p:Configuration=Release ``` -### Dependencies +This support is new and we are still working out some issues, including support +for static builds. + +## Dependencies If your OS is not supported, you will need the following: @@ -104,22 +112,22 @@ If your OS is not supported, you will need the following: - [make](https://en.wikipedia.org/wiki/Make_(software)) - [CMake](https://cmake.org/) - [git](https://git-scm.com/) -- nasm (optional, for 32 bit builds) +- [nasm](https://www.nasm.us/) (optional, for 32 bit builds) And the following development libraries: - [zlib](https://zlib.net/) (required) - [mesa](https://mesa3d.org/) (if using X11 or any OpenGL otherwise) -- ffmpeg (optional, for game recording) -- gettext and gettext tools (optional, with ENABLE_NLS) -- png (required) -- [SDL](https://www.libsdl.org/)2 (required) +- [ffmpeg](https://ffmpeg.org/) (optional, for game recording) +- [gettext](https://www.gnu.org/software/gettext/) and gettext-tools (optional, with ENABLE_NLS) +- [libpng](http://www.libpng.org/pub/png/libpng.html) (required) +- [SDL2](https://www.libsdl.org/) (required) - [SFML](https://www.sfml-dev.org/) (optional, for link) -- OpenAL (optional, a sound interface) -- [wxWidgets](https://wxwidgets.org/) (required, 2.8 is still supported, --enable-stl is supported) +- [OpenAL](https://www.openal.org/) or [openal-soft](https://kcat.strangesoft.net/openal.html) (optional, a sound interface) +- [wxWidgets](https://wxwidgets.org/) (required for GUI, 2.8 is still supported, --enable-stl is supported) On Linux and similar, you also need the version of GTK your wxWidgets is linked -to (usually 2 or 3). +to (usually 2 or 3) and the xorg development libraries. Support for more OSes/distributions for `./installdeps` is planned. @@ -136,9 +144,9 @@ may be `win32` which is an alias for `mingw-w64-i686` to target 32 bit Windows, or `mingw-gw64-x86_64` for 64 bit Windows targets. The target is implicit on MSys2 depending on which MINGW shell you started (the -value of `$MSYSTEM`.) It will not run in the MSys shell. +value of `$MSYSTEM`.) -On Debian/Ubuntu this uses the MXE apt repository and works really well. +On Debian/Ubuntu this uses the MXE apt repository and works quite well. On Fedora it can build using the Fedora MinGW packages, albeit with wx 2.8, no OpenGL support, and no Link support for lack of SFML. @@ -149,7 +157,7 @@ broken, I will at some point redo the arch stuff to use MXE as well. ## CMake Options The CMake code tries to guess reasonable defaults for options, but you can -override them on the cmake command with e.g.: +override them, for example: ```shell cmake .. -DENABLE_LINK=NO