Difference between revisions of "Compiling ScummVM/Symbian"

Jump to navigation Jump to search
Added tech info
(New page: TODO: Write this. Use the information from http://scummvm.svn.sourceforge.net/viewvc/scummvm/scummvm/trunk/backends/platform/symbian/README)
 
(Added tech info)
 
(14 intermediate revisions by 2 users not shown)
Line 1: Line 1:
TODO: Write this. Use the information from http://scummvm.svn.sourceforge.net/viewvc/scummvm/scummvm/trunk/backends/platform/symbian/README
== Requirements ==
 
Building ScummVM yourself using the UIQ 2.1/Nokia S60 SDK/Nokia S80 SDK/Nokia S90 SDK framework is not an easy task!
Lets just say the framework needs quite some time to set up and takes a while
to get used to. If you choose to continue you will need the following items:
 
* UIQ 3.x SDK (To build for UIQ3 devices)(Build scripts in SDK need tweaking in order to build scummvm since Symbian OS GCCE never builds as large projects as ScummVM before).
* [http://www.symbian.com/developer/sdks_uiq.asp UIQ 2.1 SDK] (To build for UIQ2 devices).
** [http://www.yipton.net/content/ecompxl/ ECompXL], an EPOC application compression library(To build for UIQ devices).
* Nokia S60 1st, 2nd edition,3rd edition SDK (To build for S60 devices).
* Nokia S80 SDK (To build for S80 devices).
* Nokia 7710 SDK (To build for the 7710/S90 device).
* [https://www.python.org/ Python] 2.5+.
To download next prerequsities Symbian-ready follow the [https://sourceforge.net/projects/scummvms60git/files/libs/ link](newer the best).
* [http://www.libsdl.org SDL 1.2].
* [http://www.underbit.com/products/mad/ libmad], a high-quality MPEG audio decoder.
* [http://www.zlib.net/ zlib], a massively spiffy yet delicately unobtrusive compression library.
* [https://wiki.xiph.org/Tremor libtremor], the free audio decoder for OGG support.
* [http://download.savannah.gnu.org/releases/freetype/ freetype], for TTF font support.
* [http://www.libpng.org/pub/png/libpng.html libpng], for PNG support.
* [http://libjpeg.sourceforge.net/ libjpeg], for JPEG support.
 
These are probably too heavy-duty for your phone:
* [https://github.com/knik0/faad2 libfaad2]. Free audio decoder for AAC support.
* [https://xiph.org/flac/ flac], the Free Lossless Audio Codec.
* [http://libmpeg2.sourceforge.net libmpeg2], a free MPEG-2 video stream decoder.
* [https://www.theora.org/ libtheora], the free THEORA video decoder.
* [http://liba52.sourceforge.net/ liba52], the free audio decoder for AC-3 support.
 
== Compiling ScummVM ==
 
ECompXL (Only needed for UIQ2):<br>
This is a tool that will compress your executable with GZIP and glue<br>
it to a predefined loader app. The app will uncompress your application at<br>
runtime and run it without you even knowing it. A really interesting byproduct<br>
of this method is that the general restriction of not having any writeable<br>
static data (WSD) for Symbian APP executables no longer applies. This makes<br>
the life of an EPOC porter a lot easier! To install this tool you need to add<br>
its \bin path to your PATH above the sybmian epocs32\tools path, so that ECompXL's<br>
PETRAN.EXE will be the executable that is started.
 
SDL:<br>
The latest version of SDL at this point in time is 1.2.15. This version<br>
works great for compiling on other platforms.
 
ScummVM(new, WIP):<br>
By default build for S60v3<br>
a) run build_me.py to build all the targets/variants that you have configured.
A detailed log will be placed in the symbian folder with Build.err.log and Build.out.log.
 
 
ScummVM(old):<br>
In <DevRoot>\scummvm\backends\platform\symbian\ go:<br>
a) Edit and update the BuildPackageUpload_LocalSettings.pl for the kind of build (SDK installed etc) and variants
you want to build.<br>
b) Run BuildPackageUpload_AllVersions.pl to build all the targets/variants that you have configured.<br>
A detailed log will be placed in the symbian folder with Build.err.log and Build.out.log but it also depends on
the configuration you select.<br>
 
Now you should have yourself a nice ScummVM_xxx.sis installer package in the packages folder for use<br>
on your phone. Please note that for development it will be a lot faster if you<br>
transfer the SCUMMVM.APP/Scummvm.EXE file directly to your !:\system\apps\ScummVM\ dir!<br>
 
Platforms can be one of: ARMi, ARM4, THUMB, WINS, WINSCW, GCCE. The SE P900 uses the ARMi platform,<br>
which is a combined ARM4/THUMB programming mode. Configurations can be one of:<br>
UREL or UDEB.
 
== Miscellaneous ==
*[[Symbian-build-system|Tech info on the build system]]

Navigation menu