Difference between revisions of "Compiling ScummVM/Nintendo DS"

From ScummVM :: Wiki
Jump to navigation Jump to search
(Added some basic NDS build instructions (partially based on Neil's homepage))
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
== Compiling ScummVM for Nintendo DS under Linux ==
== Compiling ScummVM for Nintendo DS ==
 
== Getting the source ==
* Open a Terminal and type:
 
<pre>git clone git://github.com/scummvm/scummvm.git</pre>


== Tools/libraries needed ==
== Tools/libraries needed ==
You must have [http://www.devkitpro.org/ devitPro] installed. Version r24 is known to work, more recent versions may work, but occasionally introduce non-backward compatibility changes which cause them to break compatibility with ScummVM.
You must have [https://devkitpro.org/wiki/Getting_Started devkitARM] installed. Version r55 is known to work, more recent versions may work, but occasionally introduce non-backward compatibility changes which cause them to break compatibility with ScummVM.
 
Moreover, by default, ScummVM DS expects to find libmad, an MP3 compressor library targeted for the ARM platform. If you don't have this, you must disable libmad support by opening 'backends/platform/ds/arm9/makefile' and commenting out the line which says USE_MAD = 1.


To sum it up, you need to install at least the following:
You need to install at least the following packages:
* devkitPro, e.g. [https://sourceforge.net/projects/devkitpro/files/devkitARM/previous/devkitARM%20release%2024/ devkitPro r24]
<syntaxhighlight lang="bash">
* libnds
sudo dkp-pacman -Sy
* libfat
sudo dkp-pacman -S \
* libmad
    devkitpro-pkgbuild-helpers \
    nds-dev \
    nds-zlib
</syntaxhighlight>


== Compiling ScummVM ==
== Compiling ScummVM ==
To build ScummVM DS from source, it's probably better to checkout the latest version of the code from the ScummVM SVN repository. The ScummVM Sourceforge.net homepage has all the information about how to do this.
The following command should be run in order to setup your environment variables for cross-compiling:
 
<syntaxhighlight lang="bash">
Enter the <code>backends/platform/ds</code> folder and type:
source /opt/devkitpro/ndsvars.sh
 
</syntaxhighlight>
<syntax type="bash">
make SCUMM_BUILD=a
</syntax>
The executable nds file will build inside <code>backends/platform/ds/arm9/SCUMMVM-A</code>.
 
For other builds, substitute the letters <code>b</code> to <code>g</code> in the above line.
 
To build everything, type:
 
<syntax type="bash">
make allbuildssafe
</syntax>


To compile ScummVM, issue the following commands inside the scummvm folder:


== Further reading ==
<syntaxhighlight lang="bash">
* [http://forums.scummvm.org/viewtopic.php?t=3478 Forum thread "Compile Directions"]
./configure --host=ds --enable-plugins --enable-all-engines
* [http://forums.scummvm.org/viewtopic.php?t=7535 Forum thread "version of devkitpro needed to compile 13.1"]
make
</syntaxhighlight>

Latest revision as of 11:49, 4 February 2021

Compiling ScummVM for Nintendo DS

Getting the source

  • Open a Terminal and type:
git clone git://github.com/scummvm/scummvm.git

Tools/libraries needed

You must have devkitARM installed. Version r55 is known to work, more recent versions may work, but occasionally introduce non-backward compatibility changes which cause them to break compatibility with ScummVM.

You need to install at least the following packages:

sudo dkp-pacman -Sy
sudo dkp-pacman -S \
    devkitpro-pkgbuild-helpers \
    nds-dev \
    nds-zlib

Compiling ScummVM

The following command should be run in order to setup your environment variables for cross-compiling:

source /opt/devkitpro/ndsvars.sh

To compile ScummVM, issue the following commands inside the scummvm folder:

./configure --host=ds --enable-plugins --enable-all-engines
make