Hello, I've been trying to get QT for embedded linux up and running on a mini2440 board. Now I've managed to install the arm-gcc-4.4.3 cross-compiler (and have verified it works as I can compile something for the board from the command line). However, getting QT into the picture has been a struggle thus far. I have downloaded qt-everywhere-opensource-src-4.7.1, as that is the embedded QT library that is linked to from most articles and blog posts. I've tried configuring, making and make-installing it, eventually got it to do these steps with no errors, but it appears to be compiling my application in QTCreator for my x86 platform (running ubuntu 10.10), not the ARM platform I've configured and make'd it for. Below I've included the steps I've taken to get this far.. since it doesn't work as I think it should, I'm sure I did something wrong: install QTCreator from the ubuntu software center Copy linux/arm-linux-gcc-3.4.1 from the FriendlyARM CD to disk Edit /etc/bash.bashrc add line to bottom: PATH=$PATH:/home/imahilus/work/opt/FriendlyArm/toolschain/4.4.3/bin Copy linux/qt-everywhere-opensource-4.7.1 from the FriendlyARM CD to disk Edit qt-everywhere-opensource-4-7-1/mkspecs/qws/arm-linux-g++/qmake.conf Change QMAKE_STRIP = ... To QMAKE_RANLIB = arm-none-linux-gnueabi-ranlib Run ./configure -embedded arm -xplatform qws/linux-arm-g++ -prefix /usr/local/Qt -little-endian Run make (takes 2 and a half hours) Go to /usr/local Run sudo chown -hR user Qt/ (where user is your username) Run sudo chgrp -hR group Qt/ (where group is the group your user belongs to) Run sudo su Run make install Then I opened QTCreator, tried compiling with the QT in /usr/local/Qt, and it ran like an ordinary x86 based application. Switched the qmake in /usr/bin with the one in /usr/local/Qt, compiled the example using either one of the QT's, still.. both x86 based applications. I hope somebody is able to give me detailed instructions to get QT up and running for the mini2440, or at the least a pointer as to in which direction to look for the solution. Thank you for any assistance.
compilation / linking QT for embedded linux
< Copy linux/arm-linux-gcc-3.4.1 from the FriendlyARM CD to disk Do you mean arm-linux-gcc-4.4.3? You changed a lot more than that in your qmake.conf file, didn't you? Did you have more EXPORT statements, ie for the machine type etc? Also, I had almost endless grief using sudo on Ubuntu 10.04 http://billforums.station51.net/viewtopic.php?f=8&p=937&sid=2bf4... After getting tslib to compile I couldn't face giving Qt another go. Good luck!
Hello, my bad, indeed arm-linux-gcc-4.4.3, not 3.4.1. And no, no more changes to qmake.conf than that. Initially I changed a lot more, mainly using an absolute path to the toolchain, but it ended up not being able to find a component (ran-lib I believe), thus I ended up with mostly the default again (which didn't give that error). No exports beyond those listed either. Also thank you for the link, it appears to contain some more information, of which at least some appears to be new. Any further insights are still welcome, but at least I have some more things to try.
ranlib errors sounds familiar, I spent a lot of time trying to get through that stage. Setting up paths to libraries or ?? seemed to be a problem. Maybe a look through this might help: http://www.sereno-labs.com/qt-4-6-2-installation-procedure-for-friendlya... Good luck!
Followed the instructions from sereno-labs to the letter this time. QT is compiled and placed in /usr/local/Qt Even used the lower version cross compiler they mentioned. No errors, QtCreator sees this Qt version, but still thinks it is a desktop edition? I geuss I'm missing the step of actually using Qt with one of my projects, and how to possibly interface it with QtCreator (this is preferable, not required.. I'd settle for being able to compile my project with Qt for the mini2440 through the command-line)
Hello, below I've added the results from those commands: > which arm-linux-gcc /usr/local/arm/4.3.2/bin/arm-linux-gcc > echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/loc al/arm/4.3.2/bin