Author Topic: Qt 4.8.5 for GCW Zero  (Read 11193 times)

radon86 (OP)

  • *
  • Posts: 29
Qt 4.8.5 for GCW Zero
« on: December 11, 2013, 09:15:29 pm »
Qt is an open source cross-platform application and UI framework for developers using  C++ (see more).
I compiled Qt 4.8.5 and adapted some simple applications for GCW Zero.



Applications

LightMaps is an OpenStreetMap viewer from QT4 SDK.
--- Wi-Fi Internet connection required ---

       
        Controls:
        - Move: D-pad
        - Zoom in: "Right shoulder"
        - Zoom out: "Left shoulder"
        - Menu: "B" button
        - Activate menu item: "Start" button
        - Exit: "Select" button

        Download opk:  lightmaps.opk 6.5 MB
        Source:              lightmaps-gcw0-src.tar.gz

Anomaly is a simple web-browser for embedded system from QT4 SDK.
--- Wi-Fi Internet connection required ---

       
        Controls:
        - Move: Mouse mode (Power+B)
        - Exit: "Select" button
        - Onscreen keyboard is not implemented.

        Download opk:  anomaly.opk 14.8 MB
        Source:               anomaly-gcw0-src.tar.gz

Calculator is a simple application from QT4 SDK.

       
        Controls:
        - Select buttons: D-pad
        - Push button: "Y" button
        - Clean: "Left shoulder"
        - Backspace: "Right shoulder"
        - Equal: "Start" button
        - Exit: "Select" button

        Download opk: calculator-qt.opk 7 MB
        Source:              calculator-qt-gcw0-src.tar.gz and inside .opk


Games

Battleship is a simple sidescrolling arcade game from qt-apps.org.

       
        Controls:
        - Move: D-pad
        - Shoot: Y button
        - Pause: Right shoulder
        - Exit: Select

        Download opk:  battleship.opk 7.8 MB
        Source:               battleship-gcw0-src.tar.gz


PortedAsteroids is a port of Asteroids game from QT4 SDK.

       
        Controls:
        - Thrust: D-pad up
        - Brake: D-pad down (item needed)
        - Rotate left: D-pad left
        - Rotate right: D-pad right
        - Shoot: Y button
        - Shield: X button
        - Teleport: B button
        - Launch: A button
        - New game: START button
        - Exit: SELECT button

        Download opk:  portedasteroids.opk 6.5 MB
        Source:               portedasteroids-gcw0.src.tar.gz

OPK-version of applications includes all necessary shared libs.  You can unpack opk file for access to binaries:
Code: [Select]
$ unsquashfs -d /tmp/tempdir *.opkThen use a *.dge shell script to launch app.

Next archive contains Qt libraries for GCW0 separately: qt4-gcw0.tar.gz (19.6 MB).



All Qt's things for developers:
        qt-4.8.5-gcw0.tar.gz

To build Qt I used custom toolchain with IPV6 support (added BR2_TOOLCHAIN_BUILDROOT_INET_IPV6=y into buildroot config) and qt-pthread patch (many thanks for EXL's tutorial!).
Configure options:
Code: [Select]
./configure -embedded mips -opensource -confirm-license -little-endian -host-little-endian -qt-mouse-tslib -qt-mouse-linuxinput -opengl es2 -qt-gfx-transformed -qt-gfx-vnc -qt-zlib -qt-libtiff -qt-libpng -qt-libmng -qt-libjpeg -nomake docs -fast -prefix /opt/QtSDKs/Qt4.8.5-mips-gcw0-new
Supported features:
+ Core, widgets, network etc works fine
+ QML/Javascript and webkit works fine
+/- OpenGL ES works only for 2D grafic
- Phonon and some other multimedia features requires glibc and gstreamer support.

Edit 2019-02-07: fixed links, removed static-version stuff, spell-checked
« Last Edit: February 07, 2019, 04:18:27 pm by radon86 »

zephyrus

  • *
  • Posts: 76
Re: Qt 4.8.5 for GCW Zero
« Reply #1 on: December 12, 2013, 05:55:49 am »
oh i have to try this out  :)
is there a opk for anomaly?

radon86 (OP)

  • *
  • Posts: 29
Re: Qt 4.8.5 for GCW Zero
« Reply #2 on: December 12, 2013, 10:11:44 am »
Unfortunately static linking disables the WebKit, so I recommend using a dynamic version.

Anyway you can try this Anomaly OPK(14.8 MB), which includes all necessary libraries.

iven

  • *
  • Posts: 9
    • Found this interesting (GCW-Zero hardware features)
Re: Qt 4.8.5 for GCW Zero
« Reply #3 on: December 12, 2013, 06:37:36 pm »
I compiled Qt 4.8.5 and adapted some simple applications for GCW Zero.
The map-viewer and internet-browser apps could be a useful tool for those of us without mobile phones and gps in our cars. Which is probably no one on this forum besides me, but nonetheless thanks very much.
Good downloads: 1, 2, 3, 4.

toto

  • *
  • Posts: 147
Re: Qt 4.8.5 for GCW Zero
« Reply #4 on: December 12, 2013, 07:37:07 pm »
Two of us! And my TV is so old that I can't plug TV-out on it!  ;)

theweirdn8

  • *
  • Posts: 113
Re: Qt 4.8.5 for GCW Zero
« Reply #5 on: December 13, 2013, 03:42:30 am »
I'm actually without a mobile phone too, so with wi-fi this can become OP.

Edit: The browser seems to be broken. The mouse does not work as well as the keyboard doesn't seem to be an option...
« Last Edit: December 13, 2013, 04:02:42 am by theweirdn8 »

radon86 (OP)

  • *
  • Posts: 29
Re: Qt 4.8.5 for GCW Zero
« Reply #6 on: December 13, 2013, 10:19:19 am »
Edit: The browser seems to be broken. The mouse does not work as well as the keyboard doesn't seem to be an option...
Did you activate the mouse input mode (Power+B)?
Anyway without onscreen keyboard browser isn't very useful.

pcercuei

  • ***
  • Posts: 1431
    • My devblog
Re: Qt 4.8.5 for GCW Zero
« Reply #7 on: December 13, 2013, 10:19:38 am »
Unfortunately static linking disables the WebKit, so I recommend using a dynamic version.

Compiling statically is not a good idea. What you could do instead, is put the dynamic Qt libs in the OPK in a directory named libs/ and use the following script:

Code: [Select]
#!/bin/sh
exec env LD_LIBRARY_PATH=lib ./my_qt_program

radon86 (OP)

  • *
  • Posts: 29
Re: Qt 4.8.5 for GCW Zero
« Reply #8 on: December 13, 2013, 10:53:44 am »
Compiling statically is not a good idea. What you could do instead, is put the dynamic Qt libs in the OPK in a directory named libs/ and use the following script:

Thanks, I already did that for webkit app.
Could you tell me, what are the advantages of dynamic linking to the static? Static OPK is a bit smaller than the dynamic + library. Is a few large files better than one very large executable?

pcercuei

  • ***
  • Posts: 1431
    • My devblog
Re: Qt 4.8.5 for GCW Zero
« Reply #9 on: December 13, 2013, 12:27:34 pm »
Dynamic linking ensures that the libs can be updated without having to recompile the program everytime.

zear

  • * Moderator
  • Posts: 2379
Re: Qt 4.8.5 for GCW Zero
« Reply #10 on: December 13, 2013, 05:16:59 pm »
Moreover, static linking can violate licenses of certain software. In example, you can't statically link against GPL licensed libraries for close-source projects.

theweirdn8

  • *
  • Posts: 113
Re: Qt 4.8.5 for GCW Zero
« Reply #11 on: December 14, 2013, 07:52:40 pm »

I tried Power+B, but still no mouse movement...

This is supposed to work with circlepad right?

zear

  • * Moderator
  • Posts: 2379
Re: Qt 4.8.5 for GCW Zero
« Reply #12 on: December 14, 2013, 11:39:17 pm »

I tried Power+B, but still no mouse movement...

This is supposed to work with circlepad right?
No, Power+B works with the D-PAD.

theweirdn8

  • *
  • Posts: 113
Re: Qt 4.8.5 for GCW Zero
« Reply #13 on: December 15, 2013, 10:32:45 pm »

LOL I see although the Dpad moves super fast.

I now await onscreen keyboard

pcercuei

  • ***
  • Posts: 1431
    • My devblog
Re: Qt 4.8.5 for GCW Zero
« Reply #14 on: December 15, 2013, 11:56:31 pm »
Moreover, static linking can violate licenses of certain software. In example, you can't statically link against GPL licensed libraries for close-source projects.
And you can't dynamically link GPL libraries either, I suppose you meant LGPL.
The LGPL allows you to link statically a closed-source binary to LGPL libraries, as long as you redistribute the object files.

theweirdn8

  • *
  • Posts: 113
Re: Qt 4.8.5 for GCW Zero
« Reply #15 on: January 05, 2014, 06:14:22 am »
Any progress with web browser?

radon86 (OP)

  • *
  • Posts: 29
Re: Qt 4.8.5 for GCW Zero
« Reply #16 on: January 06, 2014, 09:13:16 pm »
Any progress with web browser?
Now there's nothing for release, sorry.

slapstick

  • *
  • Posts: 27
Re: Qt 4.8.5 for GCW Zero
« Reply #17 on: January 15, 2014, 01:34:59 am »
I'm having trouble getting the examples to build. I put the contents of qt-4.8.5-gcw0.tar.gz in /opt/QtSDKs/Qt4.8.5-mips-gcw0-new and Qt Creator seems pretty happy with it. When trying to build, though, I get errors about a missing qmake.conf in /opt/QtSDKs/Qt4.8.5-mips-gcw0-new/mkspecs/default. The directory is empty on my computer. Should something be there, or is there a specific mkspec i need to use?

radon86 (OP)

  • *
  • Posts: 29
Re: Qt 4.8.5 for GCW Zero
« Reply #18 on: January 15, 2014, 07:02:19 pm »
I get errors about a missing qmake.conf in /opt/QtSDKs/Qt4.8.5-mips-gcw0-new/mkspecs/default. The directory is empty on my computer. Should something be there, or is there a specific mkspec i need to use?
mkspecs/default should be a link to qws/linux-mips-g++.
Code: [Select]
ls -l /opt/QtSDKs/Qt4.8.5-mips-gcw0-new/mkspecs/default
/opt/QtSDKs/Qt4.8.5-mips-gcw0-new/mkspecs/default -> qws/linux-mips-g++
Please remove empty mkspecs/default  folder and create a link.
Code: [Select]
cd /opt/QtSDKs/Qt4.8.5-mips-gcw0-new/mkspecs
rm -r default
ln -s qws/linux-mips-g++ default
I updated qt-4.8.5-gcw0.tar.gz  archive. Thanks for the report.
« Last Edit: January 15, 2014, 09:22:33 pm by radon86 »

slapstick

  • *
  • Posts: 27
Re: Qt 4.8.5 for GCW Zero
« Reply #19 on: January 15, 2014, 08:43:32 pm »
I added the qt folder from qt4-gcw0.tar.gz to my home folder, but I get this error when running something: junk/anomaly: can't load library 'libQtWebKit.so.4'. Where should I put the library files?

 

Post a new topic