| Version 18 (modified by , 15 years ago) ( diff ) |
|---|
Note that these instructions are preliminary and work in progress...
These instructions assume that you have a Symbian development set up and that you have the source code checked out.
Requirements
- QtWebKit is best built with Sbsv2 (aka Raptor). This setup assumes the availability of it.
- Please install the Bison, Flex, ActiveState Perl etc. tools from GnuWin32. See the instructions for building on Windows where to get these.
- Make sure that the GnuWin32 tools are installed in a path without spaces, i.e. not
Program Files\GnuWin32but for examplec:\GnuWin32. - You need to have
\GnuWin32\binand\Perl64\bin(if that's where your Perl is installed) in your%PATH%before the S60 SDK tools path. - In addition you need to have a native Windows compiler in your PATH, i.e. MSVC or MingW.
- You can download Raptor from here: http://developer.symbian.org/wiki/index.php/Symbian_Build_System_v2
Building Qt
If you haven't done so already, try these instructions for a release build:
- Clone Qt:
git clone git://gitorious.org/qt/qt.git qt-4.7 - Set up the 4.7 Branch:
cd qt-4.7git checkout -b 4.7 origin/4.7git branch -D master
- Configure:
configure -xplatform symbian-sbsv2 - Build for arm with 8 cores:
sbs -c armv6_urel -j8 - Get a cup of tea/coffee.
- [OPTIONAL, only needed for self-signed SIS packages] Patch capabilities and generate the sis package:
cd src/s60installsperl ..\..\bin\patch_capabilities.pl Qt_template.pkg release-armv6make sis - Put the
qt-4.7\bindirectory in your%PATH%.
Building WebKit for release
- Build the generated files and set up the build system:
cd where-your-webkit-sources-areperl Tools\Scripts\build-webkit --qt --symbian- If you are a build master, manage .def export files, and/or want to freeze exports (i.e the .def files get processed), pass CONFIG+=def_files as an argument too
- If you want faster rebuild times for your personal sandbox, pass --no-svg.
- If you want even faster build times for a _very_ feature-stripped QtWebkit, use --minimal
- To selectively turn on or off features, see features.pri
cd Source- Build for hardware:
sbs -c armv6_urel -j8 - [OPTIONAL, only needed for self-signed SIS packages] Patch capabilities:
perl %QTDIR%\bin\patch_capabilities.pl QtWebKit_template.pkg release-armv6 - Create the sis file:
make sis - Install it on the phone:
"C:\Program Files\Nokia\Nokia PC Suite 7\ApplicationInstaller.exe" %CD%\qtwebkit.sis
You can also Drag'n'drop the resulting .sis file onto Nokia PC Suite to install it.
Building WebKit for debug
- To reduce size and number of object files, you need either --minimal or --no-svg for build-webkit. With --minimal, the debug-webkit-patch-sbsv2.py script below may not required as the latter bit rots often. You may likely need a 64-bit Windows OS and a 64-bit RVCT 4.1 linker (armlink.exe) binary. See next section for RVCT4.x notes
- Almost the same as above:
- You need to have Qt built for debug as well
cd where-your-webkit-sources-areperl Tools\Scripts\build-webkit --qt --symbian --minimal--debug- Run the script
debug-webkit-patch-sbsv2.pyfrom git://gitorious.org/qtwebkit/tools.git. It was tested to work at least with Python 2.6
This is necessary because the quantity of debug information in WebKit makes armlink fail. This script works around the problem. cd Sourcesbs -c armv6_udeb-j8[OPTIONAL, only needed for self-signed SIS packages]perl %QTDIR%\bin\patch_capabilities.pl QtWebKit_template.pkgdebug-armv6make sis
Using RVCT4.0 and 64-bit armlink.exe
- RVCT4.0 is know to work nicely with Webkit.org trunk, particularly with UDEB mode where 2.2 often segfaults.
- First set up your RVCT4.0 installation by obtaining the binaries and setting up environment variables per ARM's instructions (Nokians may use SymSEE to activate it)
- If using with Symbian3 SDKs, use
sbs -c arm.v6.urel.rvct4_0to compile any project with RVCT4.0. Symbian MCL supports RVCT4.0 out of the box.
In case your link stages run into OOM even with the .py script or with --minimal, you need a 64-bit Windows OS and a 64-bit linker (armlink.exe)
- Back-up your armlink.exe from the 4.0 install
- Obtain the RVCT4.1 toolchain from your organizations compiler tools team, or from ARM.com directly.
- Extract the 64-bit armlink.exe and drop it over your 4.0 installation's armlink.exe
cd Sourceand them compile as ARMV5 or ARMV6sbs -c arm.v6.udeb.rvct4_0
Note:
See TracWiki
for help on using the wiki.