Here are some instructions for building MESS from source.
Linux and other Unix variants
If you decide to build MESS from source code in Linux, you should probably directly use the git repository on Github since bugs are corrected very quickly (and new ones are as quickly introduced ...).
Version 0.155 and higher
- gcc / gcc-c++
- Development package of gconf2
- Development package of gtk2
- Development package of the SDL2 library
- Development package of the SDL2_ttf library
- Development package of the Qt4 library
Use git to clone the repository to your local drive:
git clone https://github.com/mamedev/mame.git
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 git 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 git-core 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