Want to set up Qt5 for developing application in Wandboard
-
I said that since you have installed opengl es libraries using apt-get i think it should have downloaded arm compatible libraries and not intel
Can you
@
apt-get install libgles1-mesa libgles1-mesa-dev
apt-get install freeglut3 freeglut3-dev
@and then see if you get arm based libraries
-
Still I am not getting the libGLESv2.so file other than previous.
Can you tell from scratch how to setup Qt for my wandboard application?
I think there is some wrong at my end while doing all this thing.
-
can I explain you in brief how i am started & how i reached at this stage in my project?
this will help you to know if i was wrong at some point during this progress.
-
First we need to configure Qt before compiling, so during configuration process we get this OpenGL ES error, we have installed the libraries, found the paths of it's related header files and libraries and saved it to qmake.conf using those variables.
The problem i guess here is those libraries are Intel and not ARM and we need ARM compatible libraries since board is ARM based.One way would be try repeating the whole process again to errors if any.
Well i think best would be to ask on their "forums":http://www.wandboard.org/index.php/forums, someone definitel must have done it for ubuntu and not yocto..
-
Ok ,
Surely I will put the same problem at Wandboard forum. Lets see what is reply from that forum.I will get back to you once they reply.
Thanks.
-
Hi,
Just backtracked, since you are cross compiling, need to set the paths of OpenGL ES libs and headers to that of your toolchain. You toolchain must have those header files and the library too.
-
As you said, can you tell me what are the OpenGL ES libraries & headers for Linaro toolchain (gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux) which i am using.
Also plz tell me where to set the paths of those files.
-
The same that we searched earlier:
header - GLES2/gl2.h i.e GLES2/*
library - libGLESv2.soIt must be in the toolchain.
-
Hi,
I have checked the header files & library files within the toolchain but its not there.
You can check it by downloading the toolchain from below link.
-
Another possibility of those OpenGL libraries would be in the Ubuntu image that you have downloaded. Can you search for those in the Ubuntu that you have flashed on the board ?
-
Hi,
I search at my end i got header file GLES2/gl2.h at multiple when i put command "file path/GLES2/gl2.h" then at every path it gives C source file in ASCII format.
Also I got only one libGLESv2.so library which is Compatible to Intel.Can i search libGLESv2.so file for ARM on Internet & download it & copy to my toolchain?
is it OK?
-
bq. Can i search libGLESv2.so file for ARM on Internet & download it & copy to my toolchain?
Not sure if that would work.
But did you search if it is in the Ubuntu OS that you flashed on the board ?
It surely must be there.
And if it's there you will need to compile Qt in that environment so that it picks up the ARM compatible OpenGL libraries. -
Yes, the library libGLESv2.so is avilable at the location /usr/lib/i386-linux-gnu/mesa-egl & it is with Ubuntu OS. So how can I generate ARM compatible library with this.
Can you provide steps?
-
Lets clarify few things
- Where are you compiling Qt ? on the WandBoard or on your development machine ?
- Where is this above library on the WandBoard or your machine ?
-
Hi,
- Right now I am compiling code in Qt which is installed on my desktop PC. i haven't port Qt on wandboard.
- The above path which i mentioned is on system directory. thats means its in my PC rootfs.
-
Ok.
Do you have the Ubuntu OS for WandBoard image? If not you can create it from the OS that is flashed on your board using dd command. Then mount that image on your Host PC so that you can compile Qt in that ARM compatible Ubuntu OS environment.Can you see "this":http://www.ics.com/blog/building-qt-5-raspberry-pi#.U9tTk3Ka60k ? It explains nicely how to compile Qt5 for Raspberry Pi. I think it will be a similar process with just toolchain and compiling environment changes. Anyway it explains nicely about the cross compiling so that you get understanding what cross compiling is.
Edited
-
Let me tell you, how i reached to this stage of developement, so that you can notice what part is done & what is left.
I have followed Robert Nelson Method to set up SD card to boot Wandboard. I have successfully boot the Wandboard which will create command prompt & arm login on Wandboard. Also i have tested a simple "Hello Word" program written in vi editor & cross compile from Linaro Toolchain (gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux) on wandboard.
Also I have download "qt-opensource-linux-x86-5.3.1.run" file & run it using terminal commands.
Then i generate new project in Qtcreater of Qt5.3.1 & then compile it for local platform. Its compile successfuly gives o/p file for host machine (My desktop PC).
Now I want to do the same (that is cross compiling) for target board (Wandboard). For that I want to set up compilers, Kits, debuggers, Devices & Qt versions ( from the path Tools > Options > Build & Run) which will generate o/p file for Wandboard.Now tell me what to do next.
-
bq. Also i have tested a simple “Hello Word” program written in vi editor & cross compile from Linaro Toolchain (gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux) on wandboard.
The hello world program you have compiled requires just an arm gcc compiler which is provided by the toolchain and nothing other external.
bq. For that I want to set up compilers, Kits, debuggers, Devices & Qt versions ( from the path Tools > Options > Build & Run) which will generate o/p file for Wandboard.
For this you need to compile Qt5 for Wandboard first but for that you need ARM compatible OpenGL ES libraries which are not on your host machine but are on your target machine.
For that you have to mount the ARM compatible Ubuntu OS's image on your host system so that you get the complete environment and compilation can carry on.
After compilation succeeds you can add this Qt5 build as a kit to the Qt creator also compiler to be set as the arm linaro gcc so that when you compile applications it compiles for the arm.
Now you first need to find way to mount that WandBoard Ubuntu OS's image on your host system.
Refer to the ICS link that i posted earlier where you can see how to create an image and how to mount it. -
Hi,
I have ported the Ubuntu image for wandboard in to the SD card using Win32imagewriter.
I have observed the file type of "libGLESv2.so.2.0.0" & it gives ARM compatible.
I have copied both "gl2.h" & "libGLESv2.so.2.0.0" file at my pc Desktop. Now tell me what to do next to configure the file?Can i replace these files with the Intel compatible files located at toolchain?
-
bq. I have ported the Ubuntu image for wandboard in to the SD card using Win32imagewriter.
Did you flashed it back on to SD card ? You must not.
You have to create image file from OS on the SD card.
So do you have the image file ?