diff options
Diffstat (limited to 'README.s60-mkspec')
-rw-r--r-- | README.s60-mkspec | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/README.s60-mkspec b/README.s60-mkspec new file mode 100644 index 0000000..af500e1 --- /dev/null +++ b/README.s60-mkspec @@ -0,0 +1,99 @@ +How to build Qt for Symbian using the Linux makespec. + +Prerequisites: + + - Working RVCT 2.2 native Linux compiler. The new publicly + available RVCT 4.0 compiler may work, but it hasn't been tested + yet. + + - A working GnuPoc environment. See this page for details: + http://www.martin.st/symbian/ + Download the latest version, unpack it and run the 'install_eka2_tools' script as + described in the last part under the EKA2 part. The part about the your own gcc + are not needed as we use the rvct compiler. + Make sure you do the part about Wine setup as well. + + - Anderson Lizardo's patches for GnuPoc. Look for the + qt_s60_gnupoc_v10.patch on this page: + http://lizardo.wordpress.com/2009/09/24/installing-qt-for-s60-daily-snapshots-on-linux/ + and carry out the instructions under point 8: Installing Open C. + +Compiling: + + 1. First a few environment variables need to be set: + + export RVCT22LIB=<rvct-dir>/lib/armlib + export EPOCROOT=<s60-root> + export PATH=$PATH:<s60-root>/epoc32/tools:<rvctInstallDir>/bin + export PATH=$PATH:<qt-root>/bin + + Replace the s60-root with the installation directory of your SDK, + and the qt-root with the root of your Qt repository. + These are good candidates for putting in a script somewhere. + + 2. Run configure. It needs a bit more switches than usual, so here's + the full line: + + ./configure -developer-build -platform linux-g++ -xplatform \ + symbian/linux-armcc -little-endian -host-little-endian \ + -arch symbian + + 3. Compile Qt + + cd src + make + + and then wait for a while. + + 4. Package and install Qt + + cd s60installs + + Edit Qt_template.pkg and change the first 0x2xxxxxxx to + 0xExxxxxxx. Then execute: + + makesis Qt_template.pkg + signsis Qt_template.sis Qt_template.sisx selfsigned.cer selfsigned.key + + Then put Qt_template.sisx on a memory card and install it from + the phone file manager. + + Alternatively, you can use the runonphone tool found in the tools + directory of Qt. To build, this requires a separately configured + Qt installation for Linux, unfortunately. To use it, you also + need have App TRK running on the phone. At the time of writing, + only bleeding edge Linux kernels are able to autodetect the USB + serial port on the phone, but you can force detection by running: + + modprobe usbserial vendor=0xXXXX product=0xXXXX + + The XXXXs should be replaced with the two values listed for your + device when executing "lsusb". In most distributions, this will + lead to the creation of two devices: /dev/ttyUSB0 and + /dev/ttyUSB1. The latter is usually the one that App TRK responds + to. Then execute: + + runonphone -p /dev/ttyUSB1 -s Qt_template.sisx dummy.exe + + The dummy.exe argument is irrelevant, since we are not executing + anything yet. + + 5. Compile some helloworld application (I leave the details to you + ;-) + + qmake + make + + 6. Package, install and run application. + + makesis helloworld_template.pkg + signsis helloworld_template.sis helloworld_template.sisx \ + <QTDIR>/src/s60installs/selfsigned.cer \ + <QTDIR>/src/s60installs/selfsigned.key + + Then either install by memory card, or install and run like this: + + runonphone -p /dev/ttyUSB1 -s helloworld_template.sisx \ + helloworld.exe + + 7. Enjoy "hello world" on the phone! |