QT50-Snapshot on Raspberry Pi
-
Hello,
I need QT5 on Raspberry Pi for development and through all the search I did I was following "this link":http://qt-project.org/wiki/RaspberryPi to get the snapshot from the repo. But I am having problems in adding the deb repo to the source list. Here is the error:
"Get:2 http://archive.qmh-project.org unstable Release [1447 B]
Ign http://archive.qmh-project.org unstable Release
E: GPG error: http://archive.qmh-project.org unstable Release: The following signatures were invalid: NODATA 1 NODATA 2
"Many say that it is a network problem, but everything works well if I remove the qt deb, hence my problem.
Anyone could give me a hand?
Thank you very much!
-
Hi and welcome to devnet,
No the answer you are looking for but did you consider cross-compiling Qt 5 ?
-
Hello, thanks for the reply!
Yes I considered it, but I went through a lot of problems and, therefore, thought of using this pre-compiled version. Could you guide me through cross-compiling in real-time, so that I solve the problems I have at hand? The tutorial made by ICS didn't turn right for me.
Thanks for all the help you may give!
-
You also have this "guide":http://qt-project.org/wiki/RaspberryPi_Beginners_guide
-
Tryied to do it manuall and with the script. The script can't get the gcc-4.7-linaro, as it comes corrupted (" Saving to: ‘gcc-4.7-linaro-rpi-gnueabihf.tbz’
100%[======================================>] 1.445 --.-K/s in 0s
2014-10-24 22:49:41 (103 MB/s) - ‘gcc-4.7-linaro-rpi-gnueabihf.tbz’ saved [1445/1445]
bzip2: (stdin) is not a bzip2 file.
tar: Child returned status 2
tar: Error is not recoverable: exiting now
Error extracting cross compilation tool "), and manuall I can't get the right gcc-4.7-linaro, and after searching for it on google, I found one that returns this error:
"/home/roque/opt/gcc-4.7-linaro-rpi-gnueabihf/bin/arm-linux-gnueabihf-g++ --sysroot=/mnt/rasp-pi-rootfs -o libtest.so -shared -Wl,-Bsymbolic-functions -fPIC bsymbolic_functions.c
bsymbolic_functions.c:2:2: error: #error "Symbolic function binding on this architecture may be broken, disabling it (see QTBUG-36129)."
#error "Symbolic function binding on this architecture may be broken, disabling it (see QTBUG-36129)."
^
Symbolic function binding disabled.
-reduce-relocations was requested but this compiler does not support it
Re-run configure with -v for more information
"Also, I can't set ./configure properly because of the above error and lastly, the /qtjsbackend folder does not exist on the git cloned repo.
Sorry for all the amount of information, all of a sudden, but these are the errors I got. I am doing this on a Ubuntu 64-bit 14.04, and I installed ia32-libs. SGaist, I think you are the only one who can help me at this point. What are my alternatives?
-
Are you sure the download is valid ?
Anyway, look a bit further down the wiki, you'll see that they recommend the cross-compiler from http://gitorious.org/cross-compile-tools/ which, by the way, is more recent
-
Still not working SGaist :( Here is a printscreen that might help!
http://i.imgur.com/8AhPVQP.png
Thank you very much for the support!
-
Remove the -reduce-relocations from the options like suggested, it should continue after that
-
That sorted out right, but then, another error and this one I could not fix:
While making it, got this error:
http://i.imgur.com/WY4nyte.pngI tried to ignore it, but on the install got this one:
http://i.imgur.com/Zejtzww.pngAny advice on this?
-
Run make without -j to get the error
-
-
It makes it more readable and ensures that you don't have several errors in parallel.
Anyway, I wasn't hit by that one, however, replacing DISPMANX_TRANSFORM_T by VC_IMAGE_TRANSFORM_T should be enough in that case
-
THank you, all sorted out right now I think! Now doing dd to the sdcard. After I plug it in RPi, I assume that qt is all set up, so if I run qt on terminal it will recognize it, right?
-
What do you mean by run Qt on terminal ?
Since you cross-compiled Qt, you should start Qt Creator, Go to the Preferences, in Build and Run add your newly built Qt, make a kit using it. Add a Generic Device in devices and connect it to the Rasberry Pi.
Then create a default application that you'll configure with your Raspberry specific Kit, build, run and enjoy !
-
Ok, but I need to compile a program that makes use of Qt to run in RaspberryPi, how can I do that?
-
That's what the last paragraph describes, just start a new default project, select your Raspberry Kit, hit the run button which will trigger a build and start the application on the Pi (if you correctly add the device in the preferences)
-
ok, so first things first, How do I do all that? What manuals can I read? I am using Ubuntu (and sorry for my noobish knowledge on this, going for Qt for the first time, and it's not being an easy ride! ).
EDIT: I don't have any Qt environment set-up!
-
You don't have Qt Creator installed ? Then you should go and download the Linux package and install it.
Then go through Qt's documentation/tutorials/examples
-
SGaist, afte rall, there was something wrong with qmake.
http://i.imgur.com/uZcPyoQ.png
Suggestions? I tried again sudo make install on qtbase folder, but reported this:
"
ntConfigVersion.cmake /mnt/rasp-pi-rootfs/usr/local/qt5pi/lib/cmake/Qt5Concurrent/
make[2]: Leaving directory/home/roque/opt/qt5/qtbase/src/concurrent' cd gui/ && ( test -e Makefile || /home/roque/opt/qt5/qtbase/bin/qmake /home/roque/opt/qt5/qtbase/src/gui/gui.pro -o Makefile ) && make -f Makefile install make[2]: Entering directory
/home/roque/opt/qt5/qtbase/src/gui'
make[2]: *** No rule to make target/mnt/rasp-pi-rootfs/opt/vc/include/GLES2/gl2.h', needed by
.obj/qaccessible.o'. Stop.
make[2]: Leaving directory/home/roque/opt/qt5/qtbase/src/gui' make[1]: *** [sub-gui-install_subtargets] Error 2 make[1]: Leaving directory
/home/roque/opt/qt5/qtbase/src'
make: *** [sub-src-install_subtargets] Error 2
roque@Roque-Ubuntu:~/opt/qt5/qtbase$ sudo -e Makefile || /home/roque/opt/qt5/qtbase/bin/qmake /home/roque/opt/qt5/qtbase/src/gui/gui.pro -o Makefile
sudo: Makefile unchanged
roque@Roque-Ubuntu:~/opt/qt5/qtbase$ sudo -e Makefile || /home/roque/opt/qt5/qtbase/bin/qmake /home/roque/opt/qt5/qtbase/src/gui/gui.pro -o Makefile
sudo: Makefile unchanged
"[EDIT] Also, error output while trying to build:
"Project ERROR: Unknown module(s) in QT: quick
22:56:03: The process "/usr/local/qt5pi/bin/qmake" exited with code 3.
Error while building/deploying project helloworld (kit: Raspberry Pi)
When executing step "qmake"
22:56:03: Elapsed time: 00:00." -
Did you mount your Raspberry Pi fs ?