Request: WolfMAME Linux Binaries

Discussion about MARP's regulation play

Moderator: BBH

ChrisP
Button Slapper
Button Slapper
Posts: 8
Joined: Mon Jul 08, 2013 10:02 pm

Request: WolfMAME Linux Binaries

Post by ChrisP »

Curious if mahlemiut would consider uploading a WolfMAME Linux binary with each new release, so that those of us who'd like to do our Wolfing on Linux won't have to compile it ourselves.

I imagine that there might be more demand from this nowadays than in the past, since it seems that Linux is getting more popular, and it would save a bunch of people some time, especially if he's already building a Linux binary for himself anyway (is he?)

Just a suggestion/request, might be worth giving it a shot.
User avatar
mahlemiut
Editor
Posts: 4183
Joined: Mon Feb 04, 2002 10:05 pm
Location: New Zealand
Contact:

Re: Request: WolfMAME Linux Binaries

Post by mahlemiut »

I can if you want, but I can only produce a 64-bit binary. The one I have already built for 0.179 also includes all the computer/console/other drivers (helps me to test drivers I'm working on). If I do this for each release, also note that it might appear some days later.

I'll upload it if you're interested.
- Barry Rodewald
MARP Assistant Web Maintainer
Image
ChrisP
Button Slapper
Button Slapper
Posts: 8
Joined: Mon Jul 08, 2013 10:02 pm

Re: Request: WolfMAME Linux Binaries

Post by ChrisP »

I just got an error compiling Wolf 179, and not having to troubleshoot that would be good. 64 bit is what I'm looking for, and extra drivers are fine. If you you upload it to wolfmame.marpirc.net, I'll grab it, thanks.
User avatar
mahlemiut
Editor
Posts: 4183
Joined: Mon Feb 04, 2002 10:05 pm
Location: New Zealand
Contact:

Re: Request: WolfMAME Linux Binaries

Post by mahlemiut »

Ok, it's at http://wolfmame.marpirc.net/wolfmame-0179-linux64.7z

Compiling should be straight forward - most libraries are included and built as part of the process. You'll need GCC 5.x or 6.x, or Clang 3.4 or later (other compilers might work if they support C++14). Only external libraries needed are OpenGL, Qt5, SDL2, and SDL2_ttf. Qt5 is used by the debugger, and can be disabled (as I have done in this binary, although the imgui debugger is still available). SDL2 is in the MAME source also, but is only built for OS X builds.
- Barry Rodewald
MARP Assistant Web Maintainer
Image
ChrisP
Button Slapper
Button Slapper
Posts: 8
Joined: Mon Jul 08, 2013 10:02 pm

Re: Request: WolfMAME Linux Binaries

Post by ChrisP »

Thanks a lot for this, much better than the "official" Linux release (which stopped at 0.160, bleh) or SDLMAME for Ubuntu, both of which "install" on your system and spread files everywhere, as opposed to the superior Windows installer-free style where you just extract it and everything can live in the extracted folder. The mame.ini that you get from those versions with -cc is also a little chintsy. This one has a real mame.ini...

In the future, I'll just compile the new versions myself.
francoisadt1
Button Masher
Button Masher
Posts: 60
Joined: Sat Jul 19, 2014 8:19 am
Contact:

Re: Request: WolfMAME Linux Binaries

Post by francoisadt1 »

Thanks mahlemiut for a great compiled binary. I agree a actual self contained Linux release for every new windows wolfmame release would be great then we don not need to install lots of other libraries sitting everwhere.
ChrisP
Button Slapper
Button Slapper
Posts: 8
Joined: Mon Jul 08, 2013 10:02 pm

Re: Request: WolfMAME Linux Binaries

Post by ChrisP »

Follow up for anyone interested:

I have been compiling the new WolfMAMEs for myself, and the process is very easy, even for new Linux users, so I figured I'd list the steps. (I alluded to erroring-out before, but that was my fault, I was missing a library, so it was a simple fix.)

The following assumes that you're using Ubuntu, or another Debian-based distro. If you're using Arch, the steps would be a little different (but if you're the Arch type, you probably don't need my noob instructions :wink: )

1. You will first need to install several libraries, but you can do that in one command from the terminal.

Code: Select all

sudo apt-get install git build-essential libsdl2-dev libsdl2-ttf-dev libfontconfig-dev qt5-default
Ubuntu 16.04 includes GCC 5.4.0 out of the box, so you won't need to worry about installing that.

2. Download the source code .zip or tar.gz from https://github.com/mahlemiut/wolfmame/releases
3. Extract
4. Open a terminal in the extract folder (or cd to that folder)
5. Command is:

Code: Select all

make SUBTARGET=arcade
That's pretty much it.

The makefile is instructed to determine what OS and CPU architecture you're running, so if you're on 64 bit Linux, you'll get a 64 bit Linux executable. The process will take a while (an hour or more), but eventually your mamearcade executable will pop out in the folder you extracted the source to. Move the executable to wherever you keep your MAME executables, then you can just delete the tar.gz and the extracted source folder (it's large).

If anybody has any trouble, or you think my steps aren't good, feel free to post in this thread.
User avatar
mahlemiut
Editor
Posts: 4183
Joined: Mon Feb 04, 2002 10:05 pm
Location: New Zealand
Contact:

Re: Request: WolfMAME Linux Binaries

Post by mahlemiut »

On Arch Linux, you can use:

Code: Select all

sudo pacman -S git base-devel sdl2 sdl2_ttf qt5-base fontconfig python
If you don't have sudo installed, then you can switch to root, and then do the above, minus the call to sudo.
Remember that Python is required for the build process, although any moderately recent 2.x or 3.x Python should work. You could replace qt5-base with the whole qt5 group if you want, also, but qt5-base should be enough for MAME.
Arch currently uses GCC 7.1.1, with GCC 5.4.0 also available in the gcc5 package.
- Barry Rodewald
MARP Assistant Web Maintainer
Image
Alessandro.S
MARP Serf
MARP Serf
Posts: 160
Joined: Sat Oct 27, 2007 4:12 pm
Location: Italy

Re: Request: WolfMAME Linux Binaries

Post by Alessandro.S »

Slightly more complicated if you're running Enterprise Linux variants - this worked for me on Oracle Linux 7.4 on top of what I already had...

To build wolfmame (I did this with 0.188):

First enable the [ol7_software_collections] YUM repo in /etc/yum.repos.d/public-yum-ol7.repo by editing the appropriate section and change "enabled=0" into "enabled=1".

Next, get missing packages - for me it was enough to do the following:

Code: Select all

# yum install SDL2_ttf-devel qt5-qtbase-devel devtoolset-4-gcc devtoolset-4-gcc-c++
With the first two, YUM brings in the required dependencies for a number of other RPMS.
The other two are the 5.x C/C++ compilers, as OL 7.4 derives from RHEL 7.4 and has GCC 4.8.5 - not recent enough to build wolfmame.

After the above, you just set an environment for the build as a normal user:

Code: Select all

$ scl enable devtoolset-4 bash
and from the resulting shell prompt run

Code: Select all

$ make SUBTARGET=arcade
<edited to correct reference to MAME version>
francoisadt1
Button Masher
Button Masher
Posts: 60
Joined: Sat Jul 19, 2014 8:19 am
Contact:

Re: Request: WolfMAME Linux Binaries

Post by francoisadt1 »

Any compiled linux binaries.
This is the only link on the forum:
http://wolfmame.marpirc.net/wolfmame-0179-linux64.7z

The site "http://wolfmame.marpirc.net/" do not display anymore?

Which lightweight linux distribution is best to run wolfmame which contain a light weight window managing system?

Wants to run wolfmame in a Virtual Machine.
User avatar
mahlemiut
Editor
Posts: 4183
Joined: Mon Feb 04, 2002 10:05 pm
Location: New Zealand
Contact:

Re: Request: WolfMAME Linux Binaries

Post by mahlemiut »

I think Dreamhost have disabled doing a file list when there is no index page. Files should still be available, though.

As far as distros go, I use Arch Linux, which pretty much lets you setup the type of environment you want. It's not really a distro for those unfamiliar with Linux, however. But you can run it with no windowing system at all, and run MAME via KMS from a TTY (if you're using open-source video drivers, at least).

I can upload one of the native binaries that I build, but no guarantees that it'll work for you.

UPDATE: http://wolfmame.marpirc.net/wolfmame-linux-0218.7z
If it works fine for you, then perhaps I'll add the binary to the GitHub page, too
- Barry Rodewald
MARP Assistant Web Maintainer
Image
francoisadt1
Button Masher
Button Masher
Posts: 60
Joined: Sat Jul 19, 2014 8:19 am
Contact:

Re: Request: WolfMAME Linux Binaries

Post by francoisadt1 »

Thanks Barry, I will install Unbuntu Light and test it out
francoisadt1
Button Masher
Button Masher
Posts: 60
Joined: Sat Jul 19, 2014 8:19 am
Contact:

Re: Request: WolfMAME Linux Binaries

Post by francoisadt1 »

Hi Barry

Good new and bad news.

I have copied wolfmame179 and wolfmame218 linux binary to Ubuntu 18.04 (recent release).

The downloaded precompiled wolfmame179 works fine but not the wolfamme218.

The reason be when I do run wolfmame218 I do get the following error:
francoisadt@francoisadtpc:~/Downloads/ProgramsTemp/wolfmame-linux-0218$ ./mame64.
/mame64: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by ./mame64)
./mame64: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by ./mame64)
./mame64: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.14' not found (required by ./mame64)
./mame64: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by ./mame64)
francoisadt@francoisadtpc:~/Downloads/ProgramsTemp/wolfmame-linux-0218$

So Ubuntu only do come with version of "GLIBC 2.27-3-ubuntu1" and not bleeding edge latest proposed versions 2.28 and 2.29.

You probably compile wolfmame with latest 2.28/2.29 GLIBC source or your distro comes with GLIBC 2.28?

When I do compile wolfmame on Ubuntu it uses the version of GLIBC on my installed linux system which is GLIBC2.27
and my own compiled wolfmame 0.218 binary runs fine.

At what version of Wolfmame did you switch from GLIBC2.27 to GLIBC 2.28?

The reason I am asking is if you are able to determine which version of wolfmame correlates to which version GLIBC
library dependency then users can download from GitHub the Linux binary based upon the version of GLIBC they do have
on the system.

Compiling take quite a while so it will be worthwhile to have precompiled wolfmame linux binaries on github per release.

This will empower Linux users even further playing arcade games given the push of Linux gaming on Lakka/RetroArch and
spesific retro Linux distros.

Is it possible to have earlier releases of wolfmame binaries than the wolfmame 0.179 version you got link here?

What is the earliest wolfmame linux binary possible you be able to compile? will a wolfmame 0.106 be possible for linux
due to a lot of .INP files generated /played earlier to eliminate the need for a Linux Gamer to have windows to playback
wolfmame 0.106 .INP files on windows.

Thanks for pioneering Linux Wolfmame binaries!
User avatar
mahlemiut
Editor
Posts: 4183
Joined: Mon Feb 04, 2002 10:05 pm
Location: New Zealand
Contact:

Re: Request: WolfMAME Linux Binaries

Post by mahlemiut »

Arch is currently on GLIBC 2.31 (I update once a week, so haven't upgraded to that yet), 2.30 has been used since September.

I seem to remember there is a way to static link glibc, which will remove the dependency on modern glibc.

Qt5 is not strictly required, it is used just for the debugger. MAME can be built with this disabled.
- Barry Rodewald
MARP Assistant Web Maintainer
Image
francoisadt1
Button Masher
Button Masher
Posts: 60
Joined: Sat Jul 19, 2014 8:19 am
Contact:

Re: Request: WolfMAME Linux Binaries

Post by francoisadt1 »

Hi Barry

I did found a thread on MARP site where an attempt was made (and achieved) by aycaramba to have a TG Wolfmame for Linux
that is 100% compatible with Windows version of Wolfmame 0.106.
In thread: "xwolfmame 0.106 TG compatible"
Link: http://www.marpirc.net/viewtopic.php?t=14831

Called:
xwolfmame-0.106-TG-0.1.zip

Your version is listed here:
http://wolfmame.marpirc.net/xwolfmame-0106.tar.bz2

He did enhance it so that the .INP/.WLF files are aligned in the Linux version:
xwolfmame-0.106-TG-0.1.zip

Do you have this special made TG version? Can you take your wolfmame 106 linux source/add the diffs part to create a one final source code version of wolfmame linux TG compatible?

Diff on the above thread links to:
http://www.marpirc.net/download/file.ph ... 7f44555a29

If you be able to do this recompile then at least we have a wolfmame 0.106 TG compatible version which can be used to playback windows 0.106.

This "compatibility differences" at one point in source code did you merged code so that regardless of platform binary compiled the .INP will be the same ? Was it wolfmame 0159 on github https://github.com/mahlemiut/wolfmame/r ... ag/wolf159
(That is the earliest one I could find on github).

So basics then we can sit with a Linux 0.106, 0.159 onwards to start with?
Post Reply