Original Attachment has been moved to: 802-mkspecs.mx5x.tar.gz
Original Attachment has been moved to: 803-qt_qpaintengine_gles1.patch
Hi,
I tried to install QT 4.7.3 but i got this warning
The OpenGL ES 2.0 functionality test failed!
You might need to modify the include and library search paths by editing
QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in
/home/gorio/Downloads/QT/Embedded/qt-everywhere-opensource-src-4.7.3/mkspecs/qws/linux-mxc-g++
Could someone help me to fix it ?
Thank you
Hi Vladan,
Good question. I've got a 32-bit 10.10 host as well at home that I'll trying building on and see if I get the same errors.
Thanks for posting your ltib patches as well. I'll give that a try and see how it goes.
I'm surprised with all the error messages you got when cross-compiling.I wonder if it's due to using 64-bit machine?
I posted patches I use when building Qt 4.7.2 release, would be interesting to hear how building goes with those...
And for the ambitious, it is also possible to build Qt natively on an i.MX5x board running the Ubuntu image. I started out trying to cross compile against the lucid rootfs that I copied to my host, but ran into either compiler or library mismatches that I wasn't able to solve, so decided to try building on the board itself.
I was able to build using the below steps on an MX53evk, using the 11.01 kernel and associated .debs, and the lucid rootfs. Again, no reason this shouldn't work on an MX53 quick start board or MX51evk (and with the latest 11.03 BSP).
A couple things to keep in mind if anyone tries this:
Started by bringing the lucid rootfs up to date:
sudo apt-get install update
sudo apt-get install -u upgrade
Install necessary packages:
sudo apt-get install bison flex libqt4-dev libqt4-opengl-dev libphonon-dev libicu-dev libsqlite3-dev libxext-dev libxrender-dev gperf libfontconfig1-dev
sudo apt-get install libmysqlclient-dev
sudo apt-get install libgstreamer0.10-plugins-good sudo apt-get install libgstreamer0.10-plugins-bad sudo apt-get install libgstreamer0.10-plugins-ugly sudo apt-get install libts-dev
In qmake.conf, remove -lxcb-xlib from QMAKE_LIBS as it appears to be depracated in lucid. See the attached mkspecs.mx5x.native.tar.gz which has this taken care of and has the toolchain paths adjusted. Again, there are versions of qmake.conf for both OpenGL ES1 and ES2.
cd /usr/lib
ln -s libgsl-fsl.so libgsl.so
When building on the board, I think I still got the 3 static lib errors described in the post above, but can't recall for sure (still need to re-verify this with the MX53 QSB and 11.03). In any event, if you get these, just use the same workarounds described above to get around them.
If building with OpenGL ES1 support, you'll definitely still get the qpaintengine_opengl_p.h problem, and you'll want to apply the patch in the above post.
You'll also run into one additional problem, the signature will be something along the lines of:
Error about "selected processor does not support `swp r1,r2,[r3]`
This is due to a known bug, see:
https://bugs.launchpad.net/ubuntu/+source/qt4-x11/+bug/490371
To work around this, apply the attached patch (armv7-thumb.patch) from the top level qt-everywhere-opensource-src-4.7.2 directory:
patch -p1 <armv7-thumb.patch
cd src/corelib/arch
cp qatomic_armv6.h qatomic_arm.h
cd ../../..
Apply the patches before running configure as described in the above post. When running configure you'll want to make sure the -prefix switch is modified to account for the native path. See below for the example from my run:
$ ./configure -arch arm -xplatform linux-g++-mx5x -release -prefix /usr/local/Trolltech/Qt-4.7.2-mx5x-x11 -multimedia -phonon -phonon-backend -qt-gfx-linuxfb -qt-kbd-tty -little-endian -host-little-endian -fontconfig -sm -opengl es2
After running make and make install as described above, you'll also need to copy the Qt libs to /usr/lib - example below:
$ sudo cp -a /usr/local/Trolltech/Qt-4.7.2-mx5x-x11/lib/* /usr/lib/
After this you should be able to run any of the demos or examples you built in a similar fashion to that described in the above post.