http://mupen64plus.org/wiki/index.php?title=MacOSXInstructions&feed=atom&action=historyMacOSXInstructions - Revision history2024-03-28T13:48:30ZRevision history for this page on the wikiMediaWiki 1.23.9http://mupen64plus.org/wiki/index.php?title=MacOSXInstructions&diff=44&oldid=prevRichard42 at 22:02, 26 July 20152015-07-26T22:02:48Z<p></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 22:02, 26 July 2015</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 5:</td>
<td colspan="2" class="diff-lineno">Line 5:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Choose your mupen version :</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Choose your mupen version :</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><div class="toclimit-<del class="diffchange diffchange-inline">1</del>">__TOC__</div></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><div class="toclimit-<ins class="diffchange diffchange-inline">2</ins>">__TOC__</div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>== Mupen64plus 1.99.x and 2.x ==</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>== Mupen64plus 1.99.x and 2.x ==</div></td></tr>
</table>Richard42http://mupen64plus.org/wiki/index.php?title=MacOSXInstructions&diff=39&oldid=prevRichard42: How to install and run Mupen64Plus on Intel Macintosh computers with OSX2015-07-26T21:36:31Z<p>How to install and run Mupen64Plus on Intel Macintosh computers with OSX</p>
<p><b>New page</b></p><div>__NOTOC__<br />
Here are some basic usage instructions to compile Mupen64Plus on Intel Macintosh computers with OSX (this is for developers. If you are a user, please just download the binary from the downloads page or, if you want a front-end, look at http://bitbucket.org/auria/wxmupen64plus/wiki/Home ). As of October, 2011, all of the Mupen64Plus software will compile and run correctly. Please be aware that Mupen64Plus does not currently run on older PowerPC based Macintosh computers.<br />
<br />
Please note that these instructions are meant as guidelines for people who know what they're doing. If you don't have much experience building stuff from source, I would recommend that you wait for binary packages instead.<br />
<br />
Choose your mupen version :<br />
<div class="toclimit-1">__TOC__</div><br />
<br />
== Mupen64plus 1.99.x and 2.x ==<br />
<br />
* Install developer tools (Xcode) from the DVD that came with your Mac.<br />
<br />
* Get the code from the various modules using mercurial as on any other platform (or just download a source code archive)<br />
Get the dependencies just like you'd do for mupen64plus 1.x (except maybe GTK/Qt since there is no GUI frontend yet for mupen 2)<br />
<br />
* Install pkg-config if you don't already have it<br />
<br />
<br />
Create this file, called '''zlib.pc''', in /usr/local/lib/pkgconfig<br />
<pre><br />
prefix=/usr<br />
exec_prefix=${prefix}<br />
libdir=${exec_prefix}/lib<br />
includedir=${prefix}/include<br />
<br />
<br />
Name: zlib<br />
Version: 1.1.3<br />
Description: zlib<br />
Requires: <br />
Libs: -L${libdir} -lz<br />
Cflags: -I${includedir}</pre><br />
<br />
Create this file, called '''gl.pc''', in /usr/local/lib/pkgconfig<br />
<pre><br />
prefix=/usr<br />
exec_prefix=${prefix}<br />
libdir=${exec_prefix}/lib<br />
includedir=${prefix}/include<br />
<br />
<br />
Name: gl<br />
Version: 2.0<br />
Description: OpenGL<br />
Requires: <br />
Libs: -framework OpenGL<br />
Cflags: -I${includedir}</pre><br />
<br />
Create this file, called '''glu.pc''', in /usr/local/lib/pkgconfig<br />
<pre><br />
prefix=/usr<br />
exec_prefix=${prefix}<br />
libdir=${exec_prefix}/lib<br />
includedir=${prefix}/include<br />
<br />
<br />
Name: glu<br />
Version: 2.0<br />
Description: glu<br />
Requires: <br />
Libs: <br />
Cflags: -I${includedir}</pre><br />
<br />
<br />
A script to build (32 bits, compatible with 10.6/10.5 and maybe 10.4) looks like :<br />
<br />
<pre> <br />
PWD = `pwd`<br />
export CC="gcc-4.0"<br />
export CXX="g++-4.0"<br />
export LD="g++-4.0"<br />
APIDIR=$PWD/mupen64plus-core/src/api<br />
export MACOSX_DEPLOYMENT_TARGET=10.4<br />
export SDK_ROOT=/Developer/SDKs/MacOSX10.5.sdk<br />
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig<br />
<br />
APP_BUNDLE=./mupen64plus.app/Contents<br />
<br />
export CFLAGS="-g"<br />
export CXXFLAGS="-g"<br />
<br />
echo "== Core =="<br />
cd mupen64plus-core/projects/unix<br />
make all V=1<br />
cd ../../..<br />
cp -f mupen64plus-core/projects/unix/'''.dylib .'''<br />
<br />
echo "== RSP-HLE =="<br />
cd mupen64plus-rsp-hle/projects/unix<br />
make all V=1<br />
cd ../../..<br />
cp -f mupen64plus-rsp-hle/projects/unix/'''.dylib .'''<br />
<br />
echo ""<br />
echo "== SDL Audio =="<br />
cd mupen64plus-audio-sdl/projects/unix<br />
make all V=1<br />
cd ../../..<br />
cp -f mupen64plus-audio-sdl/projects/unix/'''.dylib .'''<br />
<br />
echo ""<br />
echo "== SDL Input =="<br />
cd mupen64plus-input-sdl/projects/unix<br />
make all V=1<br />
cd ../../..<br />
cp -f mupen64plus-input-sdl/projects/unix/'''.dylib .'''<br />
<br />
echo ""<br />
echo "== Rice =="<br />
cd mupen64plus-video-rice/projects/unix<br />
make all CC="g++-4.0" C_INCLUDE_PATH="/usr/local/include" CPLUS_INCLUDE_PATH="/usr/local/include" V=1 BITS=32 PIC=1<br />
cd ../../..<br />
cp -f mupen64plus-video-rice/projects/unix/'''.dylib .'''<br />
<br />
echo ""<br />
echo "== Arachnoid =="<br />
cd mupen64plus-video-arachnoid/projects/unix<br />
make all C_INCLUDE_PATH="/usr/local/include" CPLUS_INCLUDE_PATH="/usr/local/include" V=1<br />
cd ../../..<br />
cp -f mupen64plus-video-arachnoid/projects/unix/'''.dylib .'''<br />
<br />
echo ""<br />
echo "== Glide =="<br />
cd mupen64plus-video-glide64/projects/unix<br />
make all C_INCLUDE_PATH="/usr/local/include" CPLUS_INCLUDE_PATH="/usr/local/include" V=1<br />
cd ../../..<br />
cp -f mupen64plus-video-glide64/projects/unix/'''.dylib .'''<br />
<br />
echo ""<br />
echo "== Glide Napalm =="<br />
cd mupen64plus-video-glide-napalm/Glitch64<br />
make -f Makefile.gcc OSX_ARCH=i386 EXT_INC="../../mupen64plus-core/src/api -I./inc"<br />
cd ../src<br />
make -f Makefile.nowx-gcc all C_INCLUDE_PATH="/usr/local/include:../../mupen64plus-core/src/api" CPLUS_INCLUDE_PATH="/usr/local/include:../../mupen64plus-core/src/api" OSX_ARCH=i386<br />
cd ../..<br />
cp -f mupen64plus-video-glide-napalm/src/lib/'''.dylib .'''<br />
cp -f mupen64plus-video-glide-napalm/src/'''.dylib .'''<br />
<br />
echo ""<br />
echo "== Console =="<br />
cd mupen64plus-ui-console/projects/unix<br />
make all V=1<br />
cd ../../..<br />
cp -f mupen64plus-ui-console/projects/unix/mupen64plus .<br />
<br />
mkdir -p $APP_BUNDLE/MacOS/<br />
cp -f mupen64plus $APP_BUNDLE/MacOS/mupen64plus<br />
cp -f '''.dylib $APP_BUNDLE/MacOS/.'''<br />
</pre><br />
<br />
To build 64-bits, use something like that instead (tested on 1.6) :<br />
<pre> <br />
#!/bin/sh<br />
PWD = `pwd`<br />
<br />
APIDIR=$PWD/mupen64plus-core/src/api<br />
export LD="g++"<br />
<br />
APP_BUNDLE=./mupen64plus.app/Contents<br />
<br />
echo "== Core =="<br />
cd mupen64plus-core/projects/unix<br />
make all APIDIR=$APIDIR ARCH_DETECTED=64BITS<br />
cd ../../..<br />
cp -f mupen64plus-core/projects/unix/*.dylib .<br />
<br />
echo "== RSP-HLE =="<br />
cd mupen64plus-rsp-hle/projects/unix<br />
make all APIDIR=$APIDIR ARCH_DETECTED=64BITS LD="g++"<br />
cd ../../..<br />
cp -f mupen64plus-rsp-hle/projects/unix/*.dylib .<br />
<br />
echo ""<br />
echo "== SDL Audio =="<br />
cd mupen64plus-audio-sdl/projects/unix<br />
make all APIDIR=$APIDIR ARCH_DETECTED=64BITS<br />
cd ../../..<br />
cp -f mupen64plus-audio-sdl/projects/unix/*.dylib .<br />
<br />
echo ""<br />
echo "== SDL Input =="<br />
cd mupen64plus-input-sdl/projects/unix<br />
make all APIDIR=$APIDIR ARCH_DETECTED=64BITS<br />
cd ../../..<br />
cp -f mupen64plus-input-sdl/projects/unix/*.dylib .<br />
<br />
echo ""<br />
echo "== Rice =="<br />
cd mupen64plus-video-rice/projects/unix<br />
make all APIDIR=$APIDIR NO-ASM=1 C_INCLUDE_PATH=/usr/local/include ARCH_DETECTED=64BITS<br />
cd ../../..<br />
cp -f mupen64plus-video-rice/projects/unix/*.dylib .<br />
<br />
echo ""<br />
echo "== Arachnoid =="<br />
cd mupen64plus-video-arachnoid/projects/unix<br />
make all C_INCLUDE_PATH="/usr/local/include" CPLUS_INCLUDE_PATH="/usr/local/include" ARCH_DETECTED=64BITS<br />
cd ../../..<br />
cp -f mupen64plus-video-arachnoid/projects/unix/*.dylib .<br />
<br />
echo ""<br />
echo "== Glide =="<br />
cd mupen64plus-video-glide64/projects/unix<br />
make all C_INCLUDE_PATH="/usr/local/include" CPLUS_INCLUDE_PATH="/usr/local/include" ARCH_DETECTED=64BITS<br />
cd ../../..<br />
cp -f mupen64plus-video-glide64/projects/unix/*.dylib .<br />
<br />
echo ""<br />
echo "== Console =="<br />
cd mupen64plus-ui-console/projects/unix<br />
make all APIDIR=$APIDIR ARCH_DETECTED=64BITS<br />
cd ../../..<br />
cp -f mupen64plus-ui-console/projects/unix/mupen64plus .<br />
<br />
mkdir -p $APP_BUNDLE/MacOS/<br />
cp -f mupen64plus $APP_BUNDLE/MacOS/mupen64plus<br />
cp -f *.dylib $APP_BUNDLE/MacOS/.<br />
</pre><br />
<br />
''' Macports users, you will need to add flags like this to the end of many of the ''make'' commands above :'''<br />
<nowiki><br />
LIBRARY_PATH=/opt/local/lib<br />
C_INCLUDE_PATH="/opt/local/include/libpng12"<br />
CPLUS_INCLUDE_PATH="/opt/local/include/libpng12"</nowiki><br />
<br />
<br />
And a script to bundle may look like :<br />
<br />
<pre> <br />
#!/bin/sh<br />
APP_CONTENTS="./mupen64plus.app/Contents"<br />
<br />
FIX_LIST="-x $APP_CONTENTS/MacOS/mupen64plus \<br />
-x $APP_CONTENTS/MacOS/libmupen64plus.dylib \<br />
-x $APP_CONTENTS/MacOS/mupen64plus-audio-sdl.dylib \<br />
-x $APP_CONTENTS/MacOS/mupen64plus-input-sdl.dylib \<br />
-x $APP_CONTENTS/MacOS/mupen64plus-rsp-hle.dylib \<br />
-x $APP_CONTENTS/MacOS/mupen64plus-video-rice.dylib \<br />
-x $APP_CONTENTS/MacOS/mupen64plus-video-arachnoid.dylib \<br />
-x $APP_CONTENTS/MacOS/mupen64plus-video-glide64.dylib"<br />
<br />
<br />
dylibbundler -od -b $FIX_LIST -d $APP_CONTENTS/libs/<br />
<br />
rm -rf $APP_CONTENTS/Resources<br />
mkdir -p $APP_CONTENTS/Resources<br />
cp ./mupen64plus-video-rice/data/* $APP_CONTENTS/Resources<br />
cp ./mupen64plus-video-glide64/data/* $APP_CONTENTS/Resources<br />
cp ./mupen64plus-core/data/* $APP_CONTENTS/Resources<br />
cp ./mupen64plus-input-sdl/data/* $APP_CONTENTS/Resources<br />
</pre><br />
<br />
this script requires [http://macdylibbundler.sourceforge.net/ macdylibbundler] to be installed.<br />
<br />
Currently this only runs from the terminal.<br />
<br />
<br />
== Mupen64plus 1.x ==<br />
<br />
===Developer tools===<br />
Install developer tools (Xcode) from the DVD that came with your Mac.<br />
<br />
===GETTING MUPEN64PLUS===<br />
You can simply download a source archive from the mupen64plus website; you can also use SVN. SVN example :<br />
<nowiki><br />
mkdir mupen64plus<br />
cd mupen64plus<br />
svn co svn://fascination.homelinux.net:7684/mupen64plus/trunk --username mupen64 --password Dyson5632-kart</nowiki><br />
<br />
===DEPENDENCIES===<br />
* Mupen can be built with either GTK+ or Qt. It is expected that in the future the Qt version will work better, but until then the GTK+ version is easier to get to run. Install GTK+ from http://www.gtk-osx.org/. (If you like using macports, beware : GTK as installed from macports ''will'' work on your computer, but you won't be able to package a distributable dmg. The installer from the website mentionned is much more handy for this)<br />
<br />
* Other dependencies can be installed either from source or from macports.<br />
<br />
====(A) THE SOURCE CODE WAY====<br />
You will need SDL, SDL_ttf and its subdependencies (Freetype, fontconfig), and libpng.<br />
Find them with [http://www.google.com Google] and install them with the usual<br />
<nowiki><br />
./configure<br />
make<br />
sudo make install</nowiki><br />
<br />
====(B) THE MACPORTS WAY====<br />
* Install macports from [http://www.macports.org/install.php macports.org]<br />
* Open terminal (under Hard Drive, Applications, Utilities, Terminal). Type in the following commands.<br />
<nowiki><br />
sudo port install libsdl_ttf libpng</nowiki><br />
<br />
Since macports installs librairies in a non-standard prefix, you will need to help the makefiles find librairies installed from macports. You can simply export LDFLAGS=-L/opt/local/lib or, more conveniently, change it on a more permanent basis by editing '''pre.mk''' in the mupen source - then locate the lines that read<br />
<nowiki><br />
OS = OSX<br />
LDFLAGS += -liconv -lpng</nowiki><br />
and make the second one<br />
<nowiki><br />
LDFLAGS += -L/opt/local/lib -liconv -lpng</nowiki><br />
<br />
<br />
===BUILDING MUPEN64PLUS===<br />
We'll first set some environment variables to help mupen find GTK+. Also make sure sdl-config is in your PATH.<br />
<nowiki><br />
export PKG_CONFIG_PATH=/Library/Frameworks/Gtk.framework/Resources/dev/lib/pkgconfig<br />
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/Library/Frameworks/GLib.framework/Resources/dev/lib/pkgconfig<br />
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/Library/Frameworks/Cairo.framework/Resources/dev/lib/pkgconfig </nowiki><br />
Then cross your fingers, it's time to build!<br />
<nowiki><br />
cd /path/to/mupen/trunk<br />
make all</nowiki><br />
<br />
Or, for a debug build:<br />
<nowiki><br />
make DBGSYM=1 all</nowiki><br />
<br />
===RUNNING===<br />
<nowiki><br />
cd mupen64plus/trunk/<br />
./mupen64plus</nowiki><br />
<br />
To run no gui mode :<br />
<nowiki><br />
# simplest :<br />
./mupen64plus --nogui <rom-path><br />
<br />
# pass some settings<br />
./mupen64plus --nogui --gfx plugins/glN64.so --audio plugins/jttl_audio.so --input plugins/blight_input.so --rsp plugins/mupen64_hle_rsp_azimer.so --emumode 1 <rom-path></nowiki><br />
<br />
Be aware that input may not work if you launch ROMs in GUI mode.<br />
<br />
===PACKAGING MUPEN64PLUS===<br />
If all you wanted is to play with Mupen64Plus, this section won't apply to you; but we want to share the fun with others, don't we? From now on, I'll concentrate on how to build a package you can send to others.<br />
<br />
Start by installing mupen :<br />
<nowiki><br />
sudo ./install.sh</nowiki><br />
<br />
You will first need an '''Info.plist''' file, sample here :<br />
<nowiki><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><br />
<plist version="1.0"><br />
<dict><br />
<key>CFBundleDevelopmentRegion</key> <string>English</string><br />
<key>CFBundleInfoDictionaryVersion</key> <string>6.0</string><br />
<key>CFBundlePackageType</key> <string>APPL</string><br />
<key>CSResourcesFileMapped</key> <true/><br />
<br />
<key>CFBundleExecutable</key> <string>launcher</string><br />
<key>CFBundleName</key> <string>Mupen64Plus</string><br />
<key>CFBundleIconFile</key> <string>mupen64plus.icns</string><br />
<key>CFBundleVersion</key> <string>1.5</string><br />
<br />
<br />
<key>CFBundleDocumentTypes</key><br />
<array><br />
<dict><br />
<key>CFBundleTypeExtensions</key><br />
<array><br />
<string>n64</string><br />
<string>N64</string><br />
<string>z64</string><br />
<string>V64</string><br />
<string>v64</string><br />
<string>V64</string><br />
</array><br />
<key>CFBundleTypeIconFile</key><br />
<string>mupen64cart.icns</string><br />
<key>CFBundleTypeName</key><br />
<string>N64 Rom</string><br />
<key>CFBundleTypeRole</key><br />
<string>Editor</string><br />
<key>LSIsAppleDefaultForType</key><br />
<true/><br />
<key>LSTypeIsPackage</key><br />
<false/><br />
</dict><br />
<br />
</array><br />
<br />
</dict><br />
</plist></nowiki><br />
(note that the executable name in this Info.plist file is ''launcher'' - I'll explain why below)<br />
<br />
You will also need icons for mupen and ROMs : mupen64plus.icns, mupen64cart.icns<br />
<br />
Then you can build the application bundle by using a simple shell script :<br />
<nowiki><br />
INSTALL_PREFIX="/usr/local"<br />
APP_CONTENTS="./Mupen64Plus.app/Contents"<br />
<br />
echo "* Removing any existing installation"<br />
rm -rf ./Mupen64Plus.app<br />
<br />
echo "* Creating skeleton"<br />
mkdir -p $APP_CONTENTS/Resources<br />
mkdir $APP_CONTENTS/MacOS<br />
cp Info.plist $APP_CONTENTS/Info.plist<br />
cp mupen64plus.icns $APP_CONTENTS/Resources/mupen64plus.icns<br />
cp mupen64cart.icns $APP_CONTENTS/Resources/mupen64cart.icns<br />
<br />
echo "* Copying executable"<br />
cp $INSTALL_PREFIX/bin/mupen64plus $APP_CONTENTS/MacOS/mupen64plus<br />
#cp ./launcher $APP_CONTENTS/MacOS/launcher<br />
<br />
echo "* Copying data files"<br />
cp -r $INSTALL_PREFIX/share/mupen64plus/ $APP_CONTENTS/Resources/</nowiki><br />
<br />
You can then make this bundle distributable by blessing it with [http://macdylibbundler.sourceforge.net DylibBundler]. First install DylibBundler by following the instructions inside. Then run this small script :<br />
<br />
<nowiki><br />
APP_CONTENTS="./Mupen64Plus.app/Contents"<br />
<br />
FIX_LIST="-x $APP_CONTENTS/MacOS/mupen64plus \<br />
-x $APP_CONTENTS/Resources/plugins/blight_input.so \<br />
-x $APP_CONTENTS/Resources/plugins/dummyaudio.so \<br />
-x $APP_CONTENTS/Resources/plugins/dummyvideo.so \<br />
-x $APP_CONTENTS/Resources/plugins/glide64.so \<br />
-x $APP_CONTENTS/Resources/plugins/glN64.so \<br />
-x $APP_CONTENTS/Resources/plugins/jttl_audio.so \<br />
-x $APP_CONTENTS/Resources/plugins/mupen64_hle_rsp_azimer.so \<br />
-x $APP_CONTENTS/Resources/plugins/mupen64_input.so \<br />
-x $APP_CONTENTS/Resources/plugins/ricevideo.so"<br />
<br />
dylibbundler -od -b $FIX_LIST -d $APP_CONTENTS/libs/</nowiki><br />
<br />
Voila it's ready! Well actually, it should be in theory... In practice there is a bug on mac : when using both SDL and GTK+ at the same time, both grab the event loop and conflict with each other. The result of this is that ROMs cannot be launched from the GTK GUI, they can only be run in ''nogui'' mode. The GTK interface however still remains necessary to configure mupen. Until this issue gets fixed properly, I work around it by placing a second executable in the bundle called ''launcher'' (see the bundling script above, there is a commented out line that does this). This executable can then act as a bridge to either open the GTK GUI and configure mupen, either launch a ROM in nogui mode.<br />
<br />
--> MacLauncher<br />
<br />
With this launcher as main executable, you should finally have a distributable executable!<br />
<br />
To be continued...</div>Richard42