1,510
edits
(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: | ||
== 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]] |