QT 5.3.1 on Linux Arm
-
I am trying to figure out how to setup to cross compile my application from linux 64bit to a beaglebone black arm. I have googled every thing I can think of to get a grasp of the steps I need to take. Is there a list somewhere of the steps to setup the environment?
I need the Qt 5.3.1 libraries on the Beaglebone. Do I have to build these myself or are they aailable somewhere?
I need the cross platform toolchain to compile for the arm, I thought I remembered I could do this from witin Qt? Is there a preferred cross platform toolchain?
-
I now have the Linaro arm cross compiler and have setup the kit for it until I get to the place where I need the Qt libraries. I assume I need to compile the source with this cross compiler so it can be used to link with for the executable that will run on the arm machine. And those libraries need to be on the arm target for the application to run.
I just found this so I will give it a try tonight
http://www.cloud-rocket.com/2013/07/building-qt-for-beaglebone/ -
My host is Ubuntu 14.04 64 bit
Target is Beaglebone Black runnung AngstromSetup the Angstrom cross compile tool chain
Download and untar
gcc_linaru_arm_linux_gnueabihf_4.0-2013.10.linux
To
/usrDownload and untar
qt-everywhere-opensource-src-5.3.1
To
/usrFollowing the readme in the qt directory
@
cd /usr/qt-everywhere-opensource-src-5.3.1
sudo ./configure -prefix $PWD/qtbase -opensource -nomake tests -nomake examples
@The test for linking against libxcb and support libraries failed!
You might need to install dependency packages, or pass -qt-xcb.
See src/plugins/platforms/xcb/README.The directory src doesn't exist. and no makefile was created.
qtbase/src/plugins/platforms/xcb/Readme does exist.
This seems to have worked when I attempted the configure again and a makefile was created.
I noticed in the Makefile sqlite was created but not sqlite 3. Is there a way to have it added?
@
sudo make -j 4
@I assume it will use the wrong toolchain and I will use this build to create a kit and use it to run on the host. Then I will make it use the linero cross complie environment.