Pages

Saturday, January 17, 2015

mupen64plus for Slackware

mupen64plus is a N64 emulator. I haven't to much experience with this emulator but the emulator seems to do the job pretty well. So here is a little installation instruction for Slackware.
Start by creating a location were you can store all packages:

# mkdir -p /usr/src/mupen64plus

Before you can install mupen64plus you need three additional libraries:


libpng15

First change into the prior created directory:

# cd /usr/src/mupen64plus

Then get the source for libpng15:

# wget -c "ftp://ftp.simplesystems.org/pub/png/src/libpng15/libpng-1.5.21.tar.xz"
...


Extract the package and change into the new created directory:

# tar xf libpng-1.5.21.tar.xz
# cd libpng-1.5.21


Then compile the sources for libpng15. The error message at the end can be safely ignored:

# ./configure --prefix=/usr --libdir=/usr/lib64
...
# make
...
# make install
...
make[2]: Leaving directory `/home/mfranke/Downloads/mupen64plus/libpng-1.5.21'
 /usr/bin/mkdir -p '/usr/share/man/man3'
/usr/bin/mkdir: cannot create directory '/usr/share/man': File exists
make[1]: *** [install-man3] Error 1
make[1]: Leaving directory `/home/mfranke/Downloads/mupen64plus/libpng-1.5.21'
make: *** [install-am] Error 2


Finally check that the library was installed:

# ls /usr/lib64/*png15*
/usr/lib64/libpng15.a
/usr/lib64/libpng15.la*
/usr/lib64/libpng15.so@
/usr/lib64/libpng15.so.15@
/usr/lib64/libpng15.so.15.21.0*


libminizip

Change back into the prior created directory for the packages:

# cd /usr/src/mupen64plus

Then download the source package for zlib (it contains libminizip):

# wget -c "http://downloads.sourceforge.net/libpng/zlib-1.2.6.tar.bz2"
...


Extract the source package and change into the following directory:

# tar xf zlib-1.2.6.tar.bz2
# cd zlib-1.2.6/contrib/minizip


Run the following commands to create the configure script (thanks to SBo for this):

# libtoolize
...
# aclocal
...
# autoconf
# automake --add-missing
...


Then build libminizip:

# ./configure --prefix=/usr --libdir=/usr/lib64
...
# make
...
# make install
...


Finally check that libminizip was installed:

# ls /usr/lib64/libminizip.*
/usr/lib64/libminizip.a
/usr/lib64/libminizip.la*
/usr/lib64/libminizip.so@
/usr/lib64/libminizip.so.1@
/usr/lib64/libminizip.so.1.0.0*


libspeexdsp

libspeesdsp is need for sound during emulation. Download a copy of the sources:

# wget -c "http://downloads.xiph.org/releases/speex/speexdsp-1.2rc3.tar.gz"
...


When the download has finished extract the package and change into the new directory:

# tar xf speexdsp-1.2rc3.tar.gz
# cd speexdsp-1.2rc3


And finally compile the sources:

# ./configure --prefix=/usr --libdir=/usr/lib64
...
# make
...
# make install
...


When all libraries are installed you're ready for mupen64plus. Change back into the directory for the packages:

# cd /usr/src/mupen64plus

Get the mupen64plus package:

# wget -c "http://mupen64plus.googlecode.com/files/mupen64plus-bundle-linux64-2.0.tar.gz"
...


Extract the package and change into the new directory:

# tar xf mupen64plus-bundle-linux64-2.0.tar.gz
# cd mupen64plus-bundle-linux64-2.0


And run the install script:

# ./install.sh
Installing Mupen64Plus Binary Bundle to /usr/local
Installation successful.


The mupen64plus binary was installed into /usr/local:

# ls /usr/local/bin/mupen64plus
/usr/local/bin/mupen64plus*


As a user you can load and play a N64 rom now:

$ mupen64plus rom.n64

Enjoy!