X11/Xlib.h: No such file or directory
-
Well, i am not using sysroot. Instead , Using -prefix option so that all that make install stuff goes to /usr/local/qt-5.2-odroid.
Created a folder in /home/odroid, Did the configure with below options,
../qt-everywhere-opensource-src-5.2.0/configure -v -opensource -confirm-license -prefix /usr/local/qt-5.2-odroid -no-largefile -no-accessibility -qt-zlib -no-gif -qt-libpng -qt-libjpeg -no-nis -no-cups -xplatform linux-arm-linaro-gnueabihf-g++ -device linux- odroid-xu4-g++ -device-option CROSS_COMPILE=/usr/local/linaro/bin/arm-linux- gnueabihf- -no-xcb -no-c++11 -no-pch -nomake examples
This will build, with -no-xcb option.
From Qt Creator i will set the Compiler, Kit and qmake. Just build and deploy.
And it worked well on Odroid XU4How to get through with -qt-xcb option for Odroid.
For BeagalBone it works with -qt-xcb option. -
Then you have to provide all missing headers and libraries in your cross-compiler folders
-
Yes, i copied all the required headers to that folder. Set PATH to that folder also.
Still it's flashing error.For beagalbone, it compiled properly. How did that .conf file searched the files.
Wjy Odroid .conf is not ? Any thing to be done for PATH setting
-
You didn't provide the libraries.
When cross-compiling, the compiler and linkers need to be able to access both the headers and corresponding libraries for the device or at least the architecture your are building for. These are usually provided in the sysroot of your device along with specific stuff to access e.g. the GPU so that you are building against the same set of libraries you'll be using for your device.
Since you don't want to use the sysroot of your device, then you have to add everything by hand for your cross-toolchain to find.
-
I understood about that, but
For beagalbone ( Without sysroot ), build created and linked all libraries automaticall, i have not added any headers or libraries manully. This toolchain(Angstrom) having all the headers and correct paths.
Same thing should go with Odroid?
I am using this tool chain gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux to build Qt on Odroid. And this toolchains does not have few headers related xcb and others. Manually i added some. Libraries not located after searching.Any specific tool chains to build for Odroid XU4 .
If build is without xcb, what all the features will be missing?
-
Because Angstrom is not just a toolchain, it's a distribution. gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux is only a toolchain.
-
How did you install the dependencies ?
-
These are for your host system not for your target.
-
Since you want to cross-compile Qt with X11 support you need to provide your cross-toolchain with both header and libraries for the architecture you are cross-compiling to.
-
2 solutions are possible:
- Cross-compile each dependency needed
- Get the packages from the distribution of your board, extract them somewhere and add the paths to your configure line.
-
OK,
Regarding first option,
Headers and their linking headers are many, it's becoming difficult to get exact files and even difficult to compile.Regarding second option.
I could not find the distribution for Odroid, If you can provide me some links to download it.Thank you.
-
What linux flavor are you running on your Odroid ?
-
So there you have it: it's an Ubuntu
-
Again, this is just a toolchain.
There's no one link. Since you don't want to use the sysroot option, either go to packages.ubuntu.com and download there the dependencies you need or use your device, install all dependencies there, then copy them to your host computer.