Here are some instructions for building MESS from source.
Linux and other Unix variants
Version 0.144 - Version 0.154
If you decide to build MESS from source code in Linux, you should probably directly use the subversion repository since bugs are corrected very quickly (and new ones are as quickly introduced ...).
- gcc / gcc-c++
- Development package of gconf2
- Development package of gtk2
- Development package of the SDL library
- Development package of the SDL_ttf library
- Development package of the Qt4 library
The Subversion repository is at svn://dspnet.fr/mame/trunk. MAME and MESS repositories were united on August 20, 2012.
Version 0.155 and higher
Instead of SDL1, the SDL2 libraries are now required:
- Development package of the SDL2 library
- Development package of the SDL2_ttf library
The repository was moved to GitHub. You can use git but also continue with the Subversion client.
The Subversion repository is at https://github.com/mamedev/mame/trunk.
Ubuntu users need to make use of the apt-get command or check the software repository tools. For Ubuntu 11.10 and newer, the following packages are required:
sudo apt-get install subversion sudo apt-get install libsdl1.2-dev sudo apt-get install libgtk2.0-dev sudo apt-get install libgconf2-dev sudo apt-get install libsdl-ttf2.0-dev
This set of package installations also imports gcc/gcc-c++ and make.
For an openSUSE installation, either use YaST or (if not already installed) follow this path:
zypper install subversion zypper install make zypper install gcc zypper install gcc-c++ zypper install gconf2-devel zypper install gtk2-devel zypper install libSDL2-devel zypper install libSDL2_ttf-devel zypper install libqt4-devel
mkdir src cd src mkdir mame cd mame svn checkout https://github.com/mamedev/mame/trunk . make TARGET=mess
If you know earlier MESS versions you will notice that there is no separate makefile.sdl anymore. Do not forget to add the TARGET, or you will compile MAME (which is not that bad either, but then you'll have arcade machines and no TI systems).
For a 64-bit environment you may add PTR64=1, but it should be automatically set when you compile it on such a machine. For a quad-core machine, you can greatly speed up the compile process with -j4 (start 4 jobs).
make TARGET=mess -j4
When you want to get a current version, use the update command. Cleaning the build environment is optional, but if you experience problems when compiling, try to clean first.
svn update make clean TARGET=mess make TARGET=mess -j4
Now you should have a freshly built mess executable file. Unlike previous versions, the tools like imgtool or chdman are not included. If your want to get the tools (chdman, imgtool), just specify "tools" to make:
make tools TARGET=mess -j4