From 87a8943b1e861e9bb1a780dc73c8d1297edcb1ac Mon Sep 17 00:00:00 2001 From: Vas Crabb Date: Wed, 12 Jan 2022 03:55:58 +1100 Subject: [PATCH] Update readme for various changes in tools package contents --- README.md | 94 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 50 insertions(+), 44 deletions(-) diff --git a/README.md b/README.md index 37b5a82..e3d2651 100644 --- a/README.md +++ b/README.md @@ -1,25 +1,26 @@ # MAME Build Tools -##### Table of Contents +##### Table of Contents * [Introduction](#introduction) -* [Installation and building](#installandbuild) - * [Downloads](#downloads) - * [Installation](#installation) - * [Building](#building) -* [Updating build tools](#updating) +* [Installation and building](#installandbuild) + * [Downloads](#downloads) + * [Installation](#installation) + * [Building](#building) +* [Updating build tools](#updating) * [Alternative Shells for advanced usage](#advanced) -* [Optional additional packages](#optional) - * [SDL](#optional-sdl) - * [QT5](#optional-qt5) - * [QT4](#optional-qt4) - * [CCache](#optional-ccache) - * [CMake](#optional-cmake) - * [DOxygen](#optional-doxygen) +* [Optional additional packages](#optional) + * [32-bit tools](#optional-32bit) + * [GNU Debugger (gdb)](#optional-gdb) + * [QT5](#optional-qt5) + * [QT4](#optional-qt4) + * [CCache](#optional-ccache) + * [CMake](#optional-cmake) + * [Clang](#optional-clang) ## Introduction -The MAME development environment for Windows consists of the GCC compiler (by way of MinGW), and the MSYS2 (POSIX/Unix compatability layer), plus various utilities such as Python and Git. It is available as a prepackaged installer, or can be assembled from upstream components. +The MAME development environment for Windows consists of the GCC compiler (by way of MinGW), and the MSYS2 (POSIX/Unix compatability layer), plus various utilities such as Python and Git. It is available as a prepackaged installer, or can be assembled from upstream components. Source control is handled by github (***https://github.com/mamedev/mame.git***), so you'll need to check out a copy. Various modules are disabled by default, but can be enabled through arguments when building and may require additional MSYS2 packages to be installed. @@ -31,14 +32,14 @@ Various modules are disabled by default, but can be enabled through arguments wh ### Downloads -* Dual 32-bit/64-bit - [msys64-32-2019-12-23.exe](https://github.com/mamedev/buildtools/releases/download/5.0/msys64-32-2019-12-23.exe) _(If you have 64-bit Windows but wish to build for both 32-bit and 64-bit. To switch between different mingw versions use **config32.bat** and **config64.bat**)_ +* 64-bit - [msys64-2021-01-12.exe](https://github.com/mamedev/buildtools/releases/download/7.0/msys64-2021-01-12.exe) _(Only 64-bit tools and libraries are included. To build 32-bit binaries, install the 32-bit MinGW tools, and switch between environments using **config32.bat** and **config64.bat**)_ ### Installation -If you are installing it in a location other than the default (*c:\msys64* or *c:\msys32*), after you unpack double-click : **autorebase.bat** +If you are installing it in a location other than the default (*C:\Users\Public\msys64*), after you unpack double-click : **autorebase.bat** -To open a non-posix shell there are two batch files: **win32env.bat** for regular Windows console. +To open a non-POSIX shell there is a batch file: **win32env.bat** for regular Windows console. **Important** thing is to setup your git environment first ```sh @@ -90,27 +91,41 @@ pacman -Su --noconfirm ## Alternative Shells for advanced usage -For a simple MSYS32 terminal use **mingw64.exe** to start or **mingw32.exe** . +For a simple MSYS32 terminal use **mingw64.exe** to start or (or **mingw32.exe** for a 32-bit environment). -For more information about Msys2, see [MSYS2 Introduction](https://github.com/msys2/msys2/wiki/MSYS2-introduction). +For more information about MSYS2, see [MSYS2 Introduction](https://github.com/msys2/msys2/wiki/MSYS2-introduction). ## Optional additional packages - -### SDL -If you wish to build with the SDL renderer: + - **For x64** +### 32-bit tools +If you wish to build 32-bit binaries: ```sh - pacman -S mingw-w64-x86_64-SDL2 mingw-w64-x86_64-SDL2_ttf + pacman -S mingw-w64-i686-gcc mingw-w64-i686-libc++ mingw-w64-i686-lld mingw-w64-i686-python mingw-w64-i686-SDL2 mingw-w64-i686-SDL2_ttf ``` - **For x86** + + +### GNU Debugger (gdb) +If you wish to debug with gdb: + + **For MSYS2 x64** + ```sh + pacman -S gdb + ``` + + **For MinGW x64** + ```sh + pacman -S mingw-w64-x86_64-gdb + ``` + + **For MinGW x86** ```sh - pacman -S mingw-w64-i686-SDL2 mingw-w64-i686-SDL2_ttf + pacman -S mingw-w64-i686-gdb ``` @@ -143,15 +158,6 @@ If you with to build the QMC2 frontend or similar: pacman -S mingw-w64-i686-qt4 ``` - - -### Doxygen -To be able to generate the documentation from the source: - - ```sh - pacman -S doxygen - ``` - ### CCache @@ -159,26 +165,27 @@ To be able to use ccache to speed-up (re)compilation **For x64** ```sh - pacman -S mingw-w64-x86_64-ccache + pacman -S mingw-w64-x86_64-ccache ``` **For x86** ```sh - pacman -S mingw-w64-i686-ccache + pacman -S mingw-w64-i686-ccache ``` - + + ### CMake Used as build system for some other project that can be handy **For x64** ```sh - pacman -S mingw-w64-x86_64-cmake + pacman -S mingw-w64-x86_64-cmake ``` **For x86** ```sh - pacman -S mingw-w64-i686-cmake + pacman -S mingw-w64-i686-cmake ``` **To build in Windows environment use from build folder:** @@ -189,19 +196,18 @@ Used as build system for some other project that can be handy ```sh cmake -G "MSYS Makefiles" .. ``` - + ### Clang If you wish to compile/link with the alternative Clang, go ahead and download: - + **For x64** ```sh - pacman -S mingw-w64-x86_64-clang mingw-w64-x86_64-clang-analyzer mingw-w64-x86_64-clang-tools-extra + pacman -S mingw-w64-x86_64-clang mingw-w64-x86_64-clang-analyzer mingw-w64-x86_64-clang-tools-extra ``` **For x86** ```sh pacman -S mingw-w64-i686-clang mingw-w64-i686-clang-analyzer mingw-w64-i686-clang-tools-extra ``` -