Page 1 of 4 1 2 3 4 >
Topic Options
#35138 - 10/29/07 03:48 PM Sticky: How to compile SDLMAME! (Read me first!)
R. Belmont Offline
Very Senior Member

Registered: 03/17/01
Posts: 13177
Loc: USA
Like I said elsewhere, this thread is for people to post what needs to be done to compile SDLMAME on a base install of an OS or Linux distro. It is NOT for discussion or support - if you are unable to build SDLMAME with these instructions, please start a new thread!

To kick off, for Fedora 12 through 18:
Code:
yum install gcc gcc-c++ SDL-devel libXinerama-devel gtk2-devel GConf2-devel SDL_ttf SDL_ttf-devel


If you are using a joypad or joystick (including wired USB Xbox 360 controllers), you'll need to make sure those drivers are installed as well:
Code:
yum install kernel-modules-extra


Updated Jan, 2013: Updated for Fedora 18 and latest MAME/MESS.


Edited by R. Belmont (01/18/13 09:07 PM)

Top
#35140 - 10/29/07 04:17 PM Re: SDLMAME distro cookbook [Re: R. Belmont]
play0r Offline
Member

Registered: 07/11/07
Posts: 24
Ubuntu 11.10 (should also work for Kubuntu)
Code:
sudo apt-get install build-essential subversion libsdl1.2-dev libgtk2.0-dev libgconf2-dev libsdl-ttf2.0-dev 


For Ubuntu 12.10 make that:
Code:
sudo apt-get install build-essential subversion libsdl1.2-dev libgtk2.0-dev libgconf2-dev libsdl-ttf2.0-dev gcc-4.6 g++-4.6


On 12.10, for MAME versions 0.147u5 and later 12.10 will be auto-detected and it will prompt you to install gcc-4.6 and g++-4.6 if you haven't already. If you do have them installed, it will build automatically. For 0.147u4 and earlier, you must "make DISTRO=gcc46-generic".

I believe this should be all you need, if not please correct me.

play0r

[RB - updated Jan. 2013 for 12.10 and latest MAME/MESS]

Top
#35144 - 10/29/07 07:34 PM Re: SDLMAME distro cookbook [Re: play0r]
judge Offline
Very Senior Member

Registered: 04/13/04
Posts: 1438
OS X:
- Install latest Xcode
- Install latest SDL development libraries
- make TARGETOS=macosx
- Add BIGENDIAN=1 to the line above when building for a PowerMac system

[RB - updated PPC instructions]


Edited by R. Belmont (05/24/08 03:22 PM)

Top
#35167 - 10/30/07 07:33 AM Re: SDLMAME distro cookbook [Re: Belegdol]
judge Offline
Very Senior Member

Registered: 04/13/04
Posts: 1438
For a FreeBSD system with an up to date ports tree:
- cd /usr/ports/emulators/sdlmame
- su
- make
- make install

That will automatically download, compile, and install sdlmame and all needed dependencies.

If you want to build from the latest u-update, make sure you have done the above at least once to get the needed dependencies and from there on it's just a matter of issuing the appropriate make commands.


Sadly enough, there doesn't seem to be a PBI for pcbsd yet for either sdlmame or sdlmess.


Edited by judge (10/30/07 09:09 AM)

Top
#41551 - 05/24/08 03:32 PM Re: SDLMAME distro cookbook [Re: judge]
billb Offline
Senior Member

Registered: 06/22/07
Posts: 223
For Yellow Dog 6 (assuming Software Development checked during install)

Code:
yum install gcc SDL-devel expat-devel zlib-devel mesa-libGL-devel gtk2-devel GConf2-devel


Detailed instructions


Edited by R. Belmont (03/05/09 04:50 PM)
Edit Reason: fixed GL name as per Bill

Top
#43035 - 07/19/08 11:04 PM Re: SDLMAME distro cookbook [Re: play0r]
couriersud Offline
Senior Member

Registered: 02/19/07
Posts: 415
Ubuntu 8.04 (Hardy Heron)
Code:
sudo apt-get install build-essential libsdl1.2-dev libgtk2.0-dev libxinerama-dev libgconf2-dev


Tested on a fresh install from the Live-CD.


Top
#44100 - 08/26/08 03:12 AM Re: SDLMAME distro cookbook [Re: couriersud]
R. Belmont Offline
Very Senior Member

Registered: 03/17/01
Posts: 13177
Loc: USA
For Debian and friends with OSS4, you may not get sound using the default libsdl1.2debian-alsa package. Replacing it with libsdl1.2debian-oss and specifying the sound driver for SDLMAME as "dsp" should work. (Thanks Rhapsody!)

Top
#44498 - 09/06/08 07:20 PM Re: SDLMAME distro cookbook [Re: R. Belmont]
Gore Daimon Offline
Senior Member

Registered: 12/04/06
Posts: 149
Loc: Itajubá - MG - Brazil
For Mandriva users:

1 - install your system with development packages
2 - get libsdl-devel package via urpmi
3 - edit SDLMAME makefile with your requirements
4 - make!
_________________________
PIAPARA's BLOG:

http://goredaimon.blogspot.com

Top
#45488 - 10/11/08 11:33 AM Re: SDLMAME distro cookbook [Re: Gore Daimon]
Cyberzinho Punk Offline
Senior Member

Registered: 09/26/06
Posts: 167
Loc: São José dos Campos, SP, Brazi...
For Slackware Linux users:

$ unzip sdlmamexxx.zip
$ cd ./sdlmamexxx
$ mcedit makefile //and edit for your requirements
$ make

Dependencies:

GConf (ftp://ftp.gnome.org/pub/GNOME/sources/GConf/)
ORBit2 (ftp://ftp.gnome.org/pub/GNOME/sources/ORBit2/)
intltool (ftp://ftp.gnome.org/pub/GNOME/sources/intltool/)


Edited by R. Belmont (11/10/08 05:46 PM)
Edit Reason: updated again
_________________________
Sorry, my English is bad!
MAME for Slackware

Top
#46678 - 12/05/08 01:20 AM Re: SDLMAME distro cookbook [Re: judge]
ElBarto Offline
Member

Registered: 07/01/08
Posts: 71
Loc: France, Paris
Originally Posted By: judge
For a FreeBSD system with an up to date ports tree:
- cd /usr/ports/emulators/sdlmame
- su
- make
- make install

That will automatically download, compile, and install sdlmame and all needed dependencies.

If you want to build from the latest u-update, make sure you have done the above at least once to get the needed dependencies and from there on it's just a matter of issuing the appropriate make commands.


Sadly enough, there doesn't seem to be a PBI for pcbsd yet for either sdlmame or sdlmess.


I've updated the ports for sdlmame and sdlmess and also created a sdlmame-devel ports for u release.
They are not in the current ports-tree yet (I've opened PR but the original commiter seems dead ...).
Just get the tgz at http://distfiles.arcadebsd.org/ports rm the current directory and extract the new one.
I've removed the useless wrapper script and sdlmame and sdlmess use .mame and .mess respectively (sdlmame-devel use .mame-devel to avoid configuration problems).

Top
#46700 - 12/06/08 01:16 PM Re: SDLMAME distro cookbook [Re: couriersud]
couriersud Offline
Senior Member

Registered: 02/19/07
Posts: 415
Ubuntu 8.10 (Intrepid Ibex) (also applies to Kubuntu 8.10 and Xubuntu 8.10 and any other *buntu 8.10)
Code:
sudo apt-get install build-essential libsdl1.2-dev libgtk2.0-dev libxinerama-dev libgconf2-dev
sudo apt-get install gcc-4.2

On 32bit:
Code:
make CC=@gcc-4.2 LD=@gcc-4.2

On 64bit:
Code:
make CC=@gcc-4.2 LD=@gcc-4.2 PTR64=1

You may of course edit the makefile as well.

gcc 4.3 exhibits certain bugs when compiling mame both in 32bit and 64bit. Therefore we need to explicitly specify CC and LD to use gcc 4.2.

Tested on a fresh install from the Live-CD as well as on my regular system.

Note: If you do not need pbuilder you may "apt-get remove" gcc-4.3 as well. But then you have to create the link "/usr/bin/gcc" yourself. mad


Edited by R. Belmont (12/10/08 04:19 PM)

Top
#46793 - 12/10/08 04:19 PM Re: SDLMAME distro cookbook [Re: Christina]
R. Belmont Offline
Very Senior Member

Registered: 03/17/01
Posts: 13177
Loc: USA
Please do not ask questions in this thread, it is for reference only.

Top
#47036 - 12/24/08 09:58 PM Re: SDLMAME distro cookbook [Re: ElBarto]
Cyberzinho Punk Offline
Senior Member

Registered: 09/26/06
Posts: 167
Loc: São José dos Campos, SP, Brazi...
For Slackware Linux 12.2 users:

$ unzip sdlmamexxx.zip
$ cd ./sdlmamexxx
$ mcedit makefile //and edit for your requirements
$ make

Dependencies:

GConf (ftp://ftp.gnome.org/pub/GNOME/sources/GConf/)
ORBit2 (ftp://ftp.gnome.org/pub/GNOME/sources/ORBit2/)

Note: intltool is no more a dependence to compile SDLMAME on Slackware Linux 12.2 because this package is included on this Slackware release.........
_________________________
Sorry, my English is bad!
MAME for Slackware

Top
#47102 - 12/29/08 12:53 PM Re: SDLMAME distro cookbook [Re: Cyberzinho Punk]
roothorick Offline
Member

Registered: 03/25/07
Posts: 28
Gentoo:

The Gentoo official method is:

mkdir -p /etc/portage
echo "app-emulation/sdlmame ~arch" >> /etc/portage/package.keywords
emerge sdlmame

That will get you 0.127 installed on your system. It looks like there's no set location for ROMs; just keep them in your home dir I guess.

Personally, 0.127 isn't new enough for me, so I added a location in my home directory to my PATH, and I manually compile sdlmame, and copy the binary there.

Top
#48644 - 03/10/09 08:29 AM Re: SDLMAME distro cookbook [Re: roothorick]
Juryiel Offline
Member

Registered: 03/09/09
Posts: 20
PPC64 (done in Gentoo and version sdlmame0.130 here):

Code:
In src/emu/eigccppc.h, change all instances of bne-- to bne-
In src/osd/sdl/osinline.h, change all instances of bne-- to bne-

then with a terminal in the sdlmame directory just do
Code:
make BIGENDIAN=1 PTR64=1


Should work well smile

Top
#50664 - 06/08/09 05:27 PM Re: SDLMAME distro cookbook [Re: Juryiel]
powtrix Offline
Member

Registered: 07/08/08
Posts: 19
Loc: Brazil
Hi all
I use a script to do all in one time (tested on slamd64/slackware64). No Gconf needed.


How to use:
Code:
source$ ./sdlupdate.sh ~/your/stuff/sdlmame0132.zip


Code:
#!/bin/bash
#Script para atualizar o SDLMAME
#data: 2009.04.07 22:25 25'

SDLMAMEDIR=~/emu/sdlmame   #where it will copy the binary files
SDLMAMEFILE=`echo $1 | cut -d "/" -f8`   #get only filename, fix w/ your dir
SDLMAMEVER=`echo $SDLMAMEFILE | cut -d "." -f1`   #return version

if [ ! -e "$1" ]; then
  echo OOPs! arquivo \"$1\" inexistente. && exit 1
#fi
elif [ -e $SDLMAMEVER ]; then
  echo Removendo $SDLMAMEVER atual...
  sleep 2
  rm -rfv $SDLMAMEVER || exit 1
  echo && sleep 2
fi

echo Descompactando $SDLMAMEVER ...
unzip $1 && cd $SDLMAMEVER || exit 1
echo

if [ -e makefile ]; then

  echo Aplicando patch para compilar sem Gnome ...
  patch -p1 -i ../sdlfix-2.diff || exit 1
  echo
  
  time make -s PTR64=1 -j5 || exit 1
  echo

  for file in `find . -type f -maxdepth 1`; do 
    if [ -x $file ]; then
      echo Copiando $file ...
      cp -rfv $file $SDLMAMEDIR || exit 1
      md5sum -b $file && md5sum -b $SDLMAMEDIR/$file || exit
    fi
  done
  
fi



Edited by R. Belmont (06/08/09 05:31 PM)
_________________________
--
pow!

Top
#50666 - 06/08/09 05:31 PM Re: SDLMAME distro cookbook [Re: powtrix]
R. Belmont Offline
Very Senior Member

Registered: 03/17/01
Posts: 13177
Loc: USA
Yeah, that will break the debugger. SDLMAME is for developers first, game players second. I've removed your patch. I've repeatedly outlined the parameters of a patch that would be acceptable to make that dependancy optional and the patch posted is NOT it. You GNOME-o-phobes need to do it right.


Edited by R. Belmont (06/08/09 05:35 PM)

Top
#53221 - 09/01/09 08:08 PM Re: SDLMAME distro cookbook [Re: R. Belmont]
Cyberzinho Punk Offline
Senior Member

Registered: 09/26/06
Posts: 167
Loc: São José dos Campos, SP, Brazi...
For Slackware Linux 13.0 users:

$ unzip sdlmamexxx.zip
$ cd ./sdlmamexxx
$ mcedit makefile //and edit for your requirements
$ make

Dependencies:

GConf (ftp://ftp.gnome.org/pub/GNOME/sources/GConf/)
ORBit2 (ftp://ftp.gnome.org/pub/GNOME/sources/ORBit2/)
_________________________
Sorry, my English is bad!
MAME for Slackware

Top
#53788 - 09/12/09 10:13 PM Re: SDLMAME distro cookbook - OSX Snow Leopard [Re: ElBarto]
Fuzzypig Offline
Member

Registered: 09/12/09
Posts: 1
Apple OSX 10.6 Snow Leopard

Changed the compilation routine slightly:

This is what I did:

OS X:
- Install latest Xcode
- Install latest SDL development libraries
- Unzip SDL Mame ZIP

Edit supplied makefile:

change both lines starting with CFLAGS ( lines 305 and 307 )
append to end of both lines the directive: -m32

Then after line 597 ( $(AR) -cr $@ $^ ) add this line:

ranlib $@

Then compile as normal: make TARGETOS=macosx


Edited by Fuzzypig (09/12/09 10:20 PM)

Top
#53790 - 09/12/09 11:11 PM Re: SDLMAME distro cookbook - OSX Snow Leopard [Re: Fuzzypig]
R. Belmont Offline
Very Senior Member

Registered: 03/17/01
Posts: 13177
Loc: USA
What is the intent of those changes? I am able to build on 10.6.1 without any modifications to the makefile.

Top
#54254 - 09/22/09 08:22 AM Re: SDLMAME distro cookbook - OSX Snow Leopard [Re: R. Belmont]
judge Offline
Very Senior Member

Registered: 04/13/04
Posts: 1438
I only had to add the -m32 option to the LDFLAGS to make it link on a macbook pro. Without it I was getting architecture related errors (x86_64 missing from SDL for instance).


Top
#57233 - 12/20/09 03:31 PM Re: SDLMAME distro cookbook [Re: ElBarto]
ENFDO1 Offline
Member

Registered: 12/20/09
Posts: 1
Hi all.
Yesterday O downloaded SDLmame for N900. I´m trying to compile for my tablet. But i can´t.

I searched all over the net, but i did´t get luck.

I´ll apreciate every advice you can give.

ENFDO.

Top
#57234 - 12/20/09 04:14 PM Re: SDLMAME distro cookbook [Re: ENFDO1]
R. Belmont Offline
Very Senior Member

Registered: 03/17/01
Posts: 13177
Loc: USA
Hi, the N900 is not yet supported. That work is in progress and hindered by the fact that none of us working on it have the hardware yet.

Top
#58231 - 01/17/10 10:39 PM Re: SDLMAME distro cookbook - OpenSUSE 11.2 [Re: R. Belmont]
mizapf Offline
Senior Member

Registered: 05/10/07
Posts: 432
Loc: Germany
I tried this for a fairly new installation of OpenSUSE 11.2:

Code:
zypper install subversion make gcc gconf2-devel gtk2-devel libSDL-devel


This should allow to check out from Subversion and to build successfully.

Michael

Top
#67744 - 03/01/11 03:02 PM Re: Sticky: How to compile SDLMAME! (Read me first!) [Re: R. Belmont]
bgm Offline
Member

Registered: 03/01/11
Posts: 1
These are the dependencies I had to install on a debian wheezy (testing):

as root:
Code:
aptitude install build-essential libsdl1.2-dev libgtk2.0-dev libsdl-ttf2.0-dev




Edited by bgm (03/01/11 03:02 PM)

Top
#77956 - 03/05/12 05:07 PM Re: Sticky: How to compile SDLMAME! (Read me first!) [Re: R. Belmont]
BiafraRepublic Offline
Member

Registered: 03/01/12
Posts: 3
For some inane reason, the source needed to have its line endings changed from CRLF to LF using dos2unix whenever I compiled SDLMAME using openSUSE 12.1, in addition, GNOME 3 is now the official GNOME...

So the list would be for openSUSE 12.1

Code:
$ sudo zypper install subversion make gcc gconf2-devel gtk2-devel gtk3-devel libSDL-devel dos2unix
.

After that, decompress the source tree and .diff patch files and run the following where you decompressed the source and applicable patches.

Code:
$ dos2unix -o *
$ patch -p0 -E < patchfile.diff /* for each patch to apply*/
$ make

Top
#77957 - 03/05/12 05:17 PM Re: Sticky: How to compile SDLMAME! (Read me first!) [Re: R. Belmont]
R. Belmont Offline
Very Senior Member

Registered: 03/17/01
Posts: 13177
Loc: USA
patch --binary will allow the patching to work even with the original line endings.

ETA: MAME still explicitly uses GTK+ 2.x, so you shouldn't need gtk3-devel.


Edited by R. Belmont (03/05/12 09:55 PM)

Top
#77958 - 03/05/12 09:59 PM Re: Sticky: How to compile SDLMAME! (Read me first!) [Re: R. Belmont]
BiafraRepublic Offline
Member

Registered: 03/01/12
Posts: 3
Originally Posted By: R. Belmont
patch --binary will allow the patching to work even with the original line endings.


So will running the following in the ...

Quote:
for i in 'ls -Ar *'; do sed 's/^M//g' $i :> $i; done /* to output a ^M (ctrl-m), type ctrl-v then ctrl-m */


...but dos2unix has never failed me yet.

Also, openSUSE 12.1 requires gtk3-devel with gcc unless you don't install GNOME (due to the switch to GNOME 3).


Edited by BiafraRepublic (03/05/12 10:01 PM)

Top
#77959 - 03/05/12 10:07 PM Re: Sticky: How to compile SDLMAME! (Read me first!) [Re: R. Belmont]
R. Belmont Offline
Very Senior Member

Registered: 03/17/01
Posts: 13177
Loc: USA
If you actually understand sed syntax, you probably don't need this guide in the first place.

For everyone else, patch --binary is much, much easier smile

ETA: Also, there have been issues reported in the past where mass conversions like that hit some binary files in the source tree and caused the compile to fail and/or the resulting binary to not work properly. Restrict to *.c, *.h, and *.mak for safety.


Edited by R. Belmont (03/05/12 10:28 PM)

Top
#77960 - 03/05/12 10:33 PM Re: Sticky: How to compile SDLMAME! (Read me first!) [Re: R. Belmont]
Belegdol Offline
Senior Member

Registered: 03/06/04
Posts: 563
Loc: Switzerland
Code:
find . -type f -not -name *.png -exec sed -i 's/\r//' {} \;

This is what mame RPM Fusion package currently uses.

Top
#77961 - 03/05/12 11:14 PM Re: Sticky: How to compile SDLMAME! (Read me first!) [Re: R. Belmont]
R. Belmont Offline
Very Senior Member

Registered: 03/17/01
Posts: 13177
Loc: USA
Speaking of which, does RPMFusion package u releases or just integer?

Top
#77966 - 03/06/12 07:38 AM Re: Sticky: How to compile SDLMAME! (Read me first!) [Re: R. Belmont]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3032
Loc: Germany
Originally Posted By: R. Belmont
Speaking of which, does RPMFusion package u releases or just integer?

Apparently also u-releases, for example:
http://download1.rpmfusion.org/nonfree/fedora/updates/testing/16/x86_64/repoview/mame.html
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#77970 - 03/06/12 04:40 PM Re: Sticky: How to compile SDLMAME! (Read me first!) [Re: R. Belmont]
Belegdol Offline
Senior Member

Registered: 03/06/04
Posts: 563
Loc: Switzerland
Yeah, u releases never leave -testing but they are there.

Top
#77971 - 03/06/12 04:45 PM Re: Sticky: How to compile SDLMAME! (Read me first!) [Re: R. Belmont]
R. Belmont Offline
Very Senior Member

Registered: 03/17/01
Posts: 13177
Loc: USA
Ahh, ok. I don't normally have -testing added, so that's why I didn't see it.

Top
#78139 - 03/17/12 12:48 AM Re: Sticky: How to compile SDLMAME! (Read me first!) [Re: R. Belmont]
BiafraRepublic Offline
Member

Registered: 03/01/12
Posts: 3
Originally Posted By: R. Belmont
Also, there have been issues reported in the past where mass conversions like that hit some binary files in the source tree and caused the compile to fail and/or the resulting binary to not work properly. Restrict to *.c, *.h, and *.mak for safety.


Another reason why I prefer dos2unix. It is fairly accurate at ignoring anything that appears to be a non-text file.

Also, I'm looking about on software.opensuse.org, and while there are packages available, the releases are almost a year old year old (I don't know which one it is at the moment as I'm dualbooted into Windows at present)...

openSUSE 12.1: http://download.opensuse.org/repositories/Emulators/openSUSE_12.1/
openSUSE 11.4: http://download.opensuse.org/repositories/Emulators/openSUSE_11.4/

Top
#78140 - 03/17/12 03:02 AM Re: Sticky: How to compile SDLMAME! (Read me first!) [Re: R. Belmont]
R. Belmont Offline
Very Senior Member

Registered: 03/17/01
Posts: 13177
Loc: USA
That's actually a good point - I have no idea who's doing the SuSE packaging right now, if anyone. All the other "name" distros and the *BSDs are actively updated.

Top
#78141 - 03/17/12 10:17 AM Re: Sticky: How to compile SDLMAME! (Read me first!) [Re: R. Belmont]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3032
Loc: Germany
The MAME package for openSUSE is usually taken from PackMan since there's apparently no 'official' package that's up to date:

http://packman.links2linux.org/package/mame

(EDIT: I was considering to add MAME and MESS packages to "my" QMC2 repository just because of this, but I've actually better things to do smile )


Edited by qmc2 (03/17/12 10:34 AM)
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
Page 1 of 4 1 2 3 4 >


Moderator:  R. Belmont 
Who's Online
2 registered (krick, Kaylee), 9 Guests and 1 Spider online.
Key: Admin, Global Mod, Mod
Shout Box

Forum Stats
4345 Members
9 Forums
7230 Topics
87151 Posts

Max Online: 183 @ 03/06/12 06:21 PM