Cross-Compiling 64-Bit MAME, A question for Dok7
![]() ![]() ![]() |
Cross-Compiling 64-Bit MAME, A question for Dok7
| miskie |
Feb 8 2010, 09:19 PM
Post
#1
|
![]() The Cat Is Back. ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Admin Joined: 10-November 04 From: New Bedford Member No.: 1 : Miskie Strauss : miskie |
As you may or may not know, the current "U" builds of MAME have moved from C to C++ to take advantage of features in the newer language. As a side-effect, running 64-bit builds of MAME have some games running on the order of 15% to 25% faster, which is fantastic.
I downloaded a fairly standard build of MAMEUI64 and was quite impressed with the performance boost - and I know that a custom compiled commandline version will be better. It always is. Anyway, I normally compile my own, and will often cross-compile from the Linux install, as I have a nice complete set of compilation tools available- But Ill be damned if I can get this version of MAME to compile at all - either as a Windows or Linux executable. I was wondering, have you had any luck, or suggestions as to what I may be missing or doing wrong. |
| Swallow |
Feb 8 2010, 10:51 PM
Post
#2
|
![]() The elephant in the room ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Joined: 11-December 07 From: Burton-upon-Trent Member No.: 3,015 : SwallowFM : SwallowFM |
I doubt that any of us (British folk, anyway) can help you when it comes to computers in general or MAME in particular. All I can do is wish you luck.
|
| Brian Bloodaxe |
Feb 8 2010, 11:03 PM
Post
#3
|
![]() EDF! EDF! ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Moderator Joined: 10-November 04 From: Edinburgh Member No.: 7 : Claval : Ash Desoto : Claval |
Miskie asking for help in a tech-related problem?
THE END IS NIGH! |
| DoktorSeven |
Feb 8 2010, 11:30 PM
Post
#4
|
|
Empirical ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Joined: 1-December 04 Member No.: 39 |
I can't get the MAMEUI version to compile at all, but using the standard MAME way of compiling (look on their site, they have a nice little downloadable package you use as an environment -- http://mamedev.org/tools/ ) will get you standard MAME, no problems.
And it was easy as anything on Linux, as always. |
| miskie |
Feb 9 2010, 12:11 AM
Post
#5
|
![]() The Cat Is Back. ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Admin Joined: 10-November 04 From: New Bedford Member No.: 1 : Miskie Strauss : miskie |
QUOTE(DoktorSeven @ Feb 8 2010, 06:30 PM) I can't get the MAMEUI version to compile at all, but using the standard MAME way of compiling (look on their site, they have a nice little downloadable package you use as an environment -- http://mamedev.org/tools/ ) will get you standard MAME, no problems. And it was easy as anything on Linux, as always. Ahh, Out of date MinGW tools seems to be the culprit - I should have known it was something simple.. Parlez vous "Duh ?" |
| miskie |
Feb 9 2010, 12:16 AM
Post
#6
|
![]() The Cat Is Back. ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Admin Joined: 10-November 04 From: New Bedford Member No.: 1 : Miskie Strauss : miskie |
|
| DoktorSeven |
Feb 26 2010, 08:51 PM
Post
#7
|
|
Empirical ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Joined: 1-December 04 Member No.: 39 |
In case you still have issues compiling MAME in Linux (if you ever need it):
1) make a mame directory 2) download mainline MAME (zipfile), all patch zips, and endings.zip utility from here. 3) make a mame subdirectory of mame (mame/mame) so running "endings" (below) doesn't screw up everything else 4) extract mainline mame zip (makes another zip file for some odd reason), change to mame/mame and extract that zip there) 5) extract all patch zips and endings.zip into the base mame directory you created (mame/) 6) from mame/mame, run endings ( $ ../endings ), this fixes stupid Windows/DOS line endings. 7) patch -p0 < ../0136u1.diff and so on, in the proper patch order until the latest 8) edit makefile for optimizations/etc 9) make -jX where X=number of cores+1 (or however many threads you want making MAME at once) 10) ./mame64 -createconfig (or whatever the name of the executable is) 11) copy mame64 or whatever file is to /usr/local/bin (as root) 12) copy mame.ini to ~/.mame/ 13) edit mame.ini, point output directory options to $HOME/.mame/whatever plus any other needed options 14) make -jX tools if you need chdman/jedutil/etc, copy them to /usr/local/bin Yes, everyone else that thinks this is needlessly complicated and asks why not just use Windows where you can download MAME and be off, we can "just download MAME" and be off as well, including using a nice frontend (GMameUI). This is for the hardcore compiling crowd (myself and miskie). |
| miskie |
Feb 26 2010, 11:05 PM
Post
#8
|
![]() The Cat Is Back. ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Admin Joined: 10-November 04 From: New Bedford Member No.: 1 : Miskie Strauss : miskie |
Thanks for that - Ill probably do a Linux-based compile run in the near future as attacking it with four cores should do a world of good speedwise.
(the newest MAME takes about 11 minutes on the 4Ghz Core2, which is just too long I also want to keep the game system as stripped as possible software-wise. The only real 'extra' thing I run on it is antivirus/spyware software as the cab is internet enabled. To everyone else RE:compiling MAME-- DO IT. The difference in performance between a vanilla downloadable version and a custom tuned compile is significant. |
![]() ![]() ![]() |
| Lo-Fi Version | Time is now: 6th September 2010 - 02:15 PM |