TrustedUser
574
edits
(New page: TODO: Write this. Use the information from http://scummvm.svn.sourceforge.net/viewvc/scummvm/scummvm/trunk/backends/platform/symbian/README) |
(Filled in SymbianOS Build Instructions from README) |
||
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) | |||
* UIQ 2.1 SDK (To build for UIQ2 devices); | |||
http://www.symbian.com/developer/sdks_uiq.asp | |||
* 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) | |||
* ECompXL, an EPOC application compression library | |||
http://www.yipton.demon.co.uk/ecompxl/latest/readme.html (To build for UIQ devices) | |||
* libsdl, Simple Directmedia Layer, a cross-platform multimedia library | |||
http://www.libsdl.org/ (see note about ESDL below) | |||
* libmad, a high-quality MPEG audio decoder | |||
http://www.underbit.com/products/mad/ | |||
* zlib, a massively spiffy yet delicately unobtrusive compression library | |||
http://www.zlib.net/ | |||
* latest version of active perl (included with Symbian SDK does not work with the build scripts) | |||
* libogg, the free media file container format | |||
http://www.xiph.org/ogg/ | |||
* libvorbis, the free audio codec | |||
http://www.vorbis.com/ | |||
These are probably too heavy-duty for your phone: | |||
* flac, the Free Lossless Audio Codec | |||
http://flac.sourceforge.net/ | |||
* libmpeg2, a free MPEG-2 video stream decoder | |||
http://libmpeg2.sourceforge.net | |||
== 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.13. This version<br> | |||
works great for compiling on other platforms. | |||
zlib:<br> | |||
The zlib-x.x.x.tar.gz does not come with UIQ .mpp build files, that's why<br> | |||
I added them for you in epoc-zlib.zip. Extract in <DevRoot>/zlib/ which will<br> | |||
create the epoc dir. In <DevRoot>/zlib/epoc/ go:<br> | |||
> bldmake bldfiles<br> | |||
> abld build<br> | |||
libmad:<br> | |||
The libmad-x.x.x.tar.gz does not come with UIQ .mpp build files, that's<br> | |||
why I added them for you in epoc-libmad.zip. Extract in <DevRoot>/libmad/ which<br> | |||
will create the epoc dir. In <DevRoot>/libmad/epoc/ go:<br> | |||
> bldmake bldfiles<br> | |||
> abld build<br> | |||
ScummVM:<br> | |||
In <DevRoot>\scummvm\backends\platform\symbian\ go: | |||
a) Edit and update the BuildPackageUpload_LocalSettings.pl for the kind of build (SDK installed etc) and variants | |||
you want to build. | |||
b) Run BuildPackageUpload_AllVersions.pl 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 but it also depends on | |||
the configuration you select. | |||
Now you should have yourself a nice ScummVM_xxx.sis installer package in the packages folder for use | |||
on your phone. Please note that for development it will be a lot faster if you | |||
transfer the SCUMMVM.APP/Scummvm.EXE file directly to your !:\system\apps\ScummVM\ dir! | |||
Platforms can be one of: ARMi, ARM4, THUMB, WINS, WINSCW, GCCE. The SE P900 uses the ARMi platform, | |||
which is a combined ARM4/THUMB programming mode. Configurations can be one of: | |||
UREL or UDEB. |