Prerequisites:
The build is verified on prebuilt rootfs(based on LTIB) which can be downloaded from freescale.com
EGL uses framebuffer backend
libEGL.so -> libEGL-fb.so
libGAL.so -> libGAL-fb.so
QT4.8
1. Download the git respository for qt4.8:
$ git clone http://git.gitorious.org/qt/qt.git qt
$ cd qt
Let us consider this as <QTDir>
2. Create /tftpboot and point your target fileystem. As like
$ mkdir -p /tftpboot
$ cd /tftpboot
$ ln -s $(ROOTFFS) rootfs
TBD:Need to work on this to use sysroot option
3. Create a build directory to install for the qt4 packages. This directory can be in any location. For example,
$ mkdir /opt/qt4
$ sudo chown -R/opt/qt4
Let us consider the the
4. Extract the attached mkspecs(linux-imx6-g++.tar.gz) to
5. Apply the attached cd 0001-add-i.MX6-EGL-support.patch attached to enable egl support for i.MX6
$ cd
$ patch -p1<0001-add-i.MX6-EGL-support.patch
6. Export CROSS-COMPILE location path to PATH
$ export PATH=$PATH:/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/
7. Enter to the <QTDir>. Do configure. You can select the options as you like. Here is an example
$ cd
$ ./configure -qpa -arch arm -xplatform qws/linux-imx6-g++ -no-largefile -no-accessibility \
-opensource -verbose -system-libpng -system-libjpeg -system-freetype -fast -opengl es2 -egl -confirm-license \
-qt-zlib -qt-libpng -no-webkit -no-multimedia \
-make examples -make demos \
-release -make libs -exceptions -no-qt3support -prefix
8. When the configure summary is shown make sure the Qt has OpenGL ES 2.0 support. Do build
$ make
$ make install
9. Now need to build eglfs plugin
$ cd
/src/plugins/platforms/eglfs
$ make
$ make install
Now the eglfs will be installed to the QT Install directory.
10. By now all required QT files are in
11. Copy the install directory to target filesystem
$ cp -rf /opt/qt4 /tftpboot/rootfs/opt/.
12. Running Qt apps on target
- Boot the target either with NFS or SD Image
- Ensure that folder
- Launch application using
$ cd /opt/qt4/examples/opengl/hellogl_es2
$ ./hellogl_es2 -platform eglfs
QT5
These steps are performed on the host
1. Download the git respository for qt5:
$ git clone git://gitorious.org/qt/qt5.git qt5
$ cd qt5
Let us consider this as
2. Create a build directory to install for the qt5 packages. This directory can be in any loctation. For example,
$ sudo mkdir /opt/qt5
$ sudo chown -R
/opt/qt5
Let us consider the the installdir as /opt/qt5
3. Enter the Qt5 directory and run the init-repository script to download all the source code for
Qt5. To download all the source code will take about an hour.
$ ./init-repository
Update: In the latest Qt5 release the webkit library is included by default and there are some issues trying to compile it.
use the next line to avoid problems if not desired to use webkit.
$ ./init-repository --no-webkit
4. From the following path
$ gedit qtbase/mkspecs/devices/linux-imx6-g++/qmake.conf
5. At the top of the qmake.conf, there is a configure line. Copy and paste the configure line into a text file located
in your build build directory. Edit the configure line to find your toolchain and filesystem. Also make sure to
include the options -no-pch, -no-opengl, -opengl es2, Here is an example of
a configure line.
Update: In the latest Qt5 stable, the option to compile the examples/demos is -compile-examples, instead of -make examples -make demos
If you are running into problems with webkit, use the option -no-icu, this will disable the webkit.
$ cd
$ cd qtbase
$ ./configure -v -opensource -confirm-license -no-pch -no-xcb -no-opengl -opengl es2 \
-make libs -device imx6 \
-compile-examples \
-device-option CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-fsl-linux-gnueabi- \
-sysroot-no-gcc-sysroot \
-prefix
7. Make the textfile that has the configure line and executable and run it. When the configure summary is shown make sure the Qt5 has openGL ES 2.0 support. Do build
$ make
$ sudo make install
When Qt5 has finished building, Qt5 will be installed in two places:
1.
2.
This is good because now all the libraries and binaries for Qt5 are installed on the host and the target filesystem. Therefore, the target already has all the libraries and binaries needed to run Qt5.
8. Also need to build qtjsbackend and qtdeclarative.
$ cd
$ cd qtjsbackend
$ ../qtbase/bin/qmake -r
$ make && sudo make install$ cd
$ cd qtdeclarative
$ ../qtbase/bin/qmake -r
$ make && sudo sudo make install
9. Running Qt apps on target
- Boot the target either with NFS or SD Image
- Ensure that folder
- Launch application using
$ cd /opt/qt5/examples/opengl/hellowindow
$ ./hellowindow -platform eglfs
FAQ:
On the target file system, the location of target libaries and includes may present in arm-linux-gnueabi directory. Make sure to create soflinks to QT can find. For example
$ cd $(ROOTFS)/usr/lib
$ ln -s arm-linux-gnueabi/libffi.so.6 libffi.so.6
While building QT5, you may see a build error that libQt5V8.so.5 is not found. This might be some problem to be addressed in QT. Workaround is to
copy all the binaries to correct path as like this
$ cp
/ /lib/* / /.
What is coming up next:
1. QT on X is already available on Yocto filesystem. Steps to enable GPU Acceleration TDB.
2. QT with Wayland support.
I already done with it.
On Fri, Aug 12, 2016 at 10:43 AM, aravinthkumarjayaprakasam <
Hi,
Post you query in Qt Form. They will give support.
Regards,
Aravinth
Hi aravinth,
Yeah, you got my point. There is no target device platform for INTEGRITY in
qt5.5/qtbase/mkspecs/devices/.
Is there any possibility to create target platform in
qt5.5/qtbase/mkspecs/devices/
by our own??
This is the full command I used to configure the target
configure -embedded -xplatform qws/integrity-arm-cxarm -prefix /
-qt-sql-sqlite
-embedded - builds the embedded version of Qt
-xplatform qws/integrity-arm-cxarm - selects the arm-cxarm mkspec for
INTEGRITY
-qt-sql-sqlite - links sqlite directly into the Qt library
According to my task the target should be integrity-arm-cxarm
On Fri, Aug 12, 2016 at 7:50 AM, aravinthkumar jayaprakasam <
Hi bharathadwajakodanda,
In your Qt source Below location can you select which device you want to use:
~/qt5.5/qtbase/mkspecs/devices/
After that i will give you the support.
Hello every one,
How to configure and build Qt5.5 for INTEGRITY RTOS???
Hi peterchiu
in Qt 5.5 don't have qws. And also above mentioned problem i solved.
Regards,
Aravinth
Hi aravinthkumar jayaprakasam,
You can try to copy the qws.conf on qt4,
then put the qws.conf into qt-everywhere-opensource-src-x.x.x/qtbase/mkspecs/common/ (x.x.x is your qt version).
Then configure again.
Hi All
I have QT5.5.0, i want to crosscompile into imx6-linux. So i used the following configuration
./configure -v -opensource -confirm-license -no-pch -no-xcb -no-opengl -opengl es2 \
-make libs -device imx6 \
-compile-examples \
-device-option CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-fsl-linux-gnueabi- \
-sysroot /home/zumi/Project/Imx6q/rootfs/L3.0.35_4.1.0_130816_images_MX6/Rootfs/opt/qt -no-gcc-sysroot \
-prefix /opt/qt-vision
Following error i am getting,
cc1plus: error: unrecognized command line option '-fuse-ld=gold'
arm-fsl-linux-gnueabi-g++ -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)."
Symbolic function binding disabled.
And one more thing,
QT5.5.0 didn't have qws.conf file. so in your attached qmake.conf file i remove include(../../common/qws.conf) line.
If i not remove the line it shows No such a file found error. After the removing i got the above mentioned error.
Regards,
Aravinth
Hi nishad
I have successfully build Qt4.8.5 for imx6. But when I tried to run the sample example I got the below error:
root@freescale /opt/qt4.8.5-arm-opengl$ cd examples/opengl/hellogl_es2/
root@freescale /opt/qt4.8.5-arm-opengl/examples/opengl/hellogl_es2$ ls
bubble.cpp glwidget.h main.cpp texture.qrc
bubble.h hellogl_es2 mainwindow.cpp
glwidget.cpp hellogl_es2.pro mainwindow.h
<-opengl/examples/opengl/hellogl_es2$ ./hellogl_es2
bubble.cpp glwidget.h main.cpp texture.qrc
bubble.h hellogl_es2 mainwindow.cpp
glwidget.cpp hellogl_es2.pro mainwindow.h
<-opengl/examples/opengl/hellogl_es2$ ./hellogl_es2 -platform eglfs
Segmentation fault
root@freescale /opt/qt4.8.5-arm-opengl/examples/opengl/hellogl_es2$
Hello All,
is anyone able to compile QT5.5 or QT 5.6 for imx6q. This page is not helping me much because QT 5 compilation section referring the gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12 fsl tool chain whcih is not available for download because it is pretty quite old.If i am using linaro latest tolchain 4.8 or 4.7 QT doesn't compile.
I would really appreciate if someone let me know which is the correct tool-chain to compile QT 5.5 or QT 5.6 version on imx6.
Hi all PrabhuSundararaj
The git url "git://gitorious.org/qt/qt5.git qt5" is not work.
Is it new git url for qt5 ? Because I want to use LTIB porting Qt5.
Please help, thanks all.
These patches are for Qt4 not for Qt5 right?
Hi Nishad,
Thanks for replying.
I am using LTIB for building my image.
yes, I built QT4.8 manually with steps as mentioned on this page.
Also, the configuration script is same as given here.
./configure -qpa -arch arm -xplatform qws/linux-imx6-g++ -no-largefile -no-accessibility \
-opensource -verbose -system-libpng -system-libjpeg -system-freetype -fast -opengl es2 -egl -confirm-license \
-qt-zlib -qt-libpng -no-webkit -no-multimedia \
-make examples -make demos \
-release -make libs -exceptions -no-qt3support -prefix /opt/qt4.
Regards,
Paritosh Singh
Hi,
Sorry for the delay in reply,
Could you give me more information about your problem?
Are you using LTIB to build your image or Yocto?
Did you manually build the QT?
Also can you mail me your configuration script? There could be a possibility that the QT is not properly built.
Regards,
nishad
Hi,
I have successfully build Qt4.8 for imx6. But when I tried to run the sample example I got the below error:
"Could not create the egl surface: error = 0x300b"
Please help me out of this.
Regards,
Paritosh
HI nice tutorial.... can you pls give some insights about qt webkit as well how to render a fullscreen HTML5 based webpage using that... am really new to qt... pls guide me
Hi all,
I tried build qt5 like in this doc.
My configuration command is:
./configure -v -opensource -confirm-license -make libs -device imx6 -device-option CROSS_COMPILE=/home/x0158990/hdd/tools/poky/1.7/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi- -sysroot /home/x0158990/hdd/tools/poky/1.7/sysroots/x86_64-pokysdk-linux -no-gcc-sysroot -prefix /home/x0158990/work/tools/QT5
I have got error:
Precompiled-headers support enabled.
/home/x0158990/hdd/tools/poky/1.7/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++ -c -fvisibility=hidden fvisibility.c
Symbol visibility control enabled.
/home/x0158990/hdd/tools/poky/1.7/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++ -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.
In QTBUG-36129 bug's description I didn't found applicable solution.
Please help!
Configuration Script:
./configure -v -opensource -confirm-license -no-sse2 -no-sse3 -no-ssse3
-no-sse4.1 -no-sse4.2 -no-avx -no-xcb -no-sql-mysql -no-sql-db2
-no-sql-ibase -no-sql-oci -no-sql-odbc -no-sql-tds -no-sql-sqlite2
-no-pch -no-opengl -opengl es2 -wayland -make libs -device imx6 -make
examples -device-option
CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-fsl-linux-gnueabi-
-sysroot /home/sumeet/ltib/rootfs -no-gcc-sysroot -prefix /usr/local/QT_5
Link to be followed thoughtfully along with the procedure given on the
current link above:
http://qt-project.org/wiki/RaspberryPi_Beginners_guide
I used the "cross-compiled-tools" to compile QT-5
and built individual modules using the link.
you need to download it as use it taking reference of the script given below for setting up path.
Cleaning a_config_if_compile_wrong:
sudo git submodule foreach --recursive "git clean -dfx"
Script for_setting_paths:
./fixQualifiedLibraryPaths /home/sumeet/ltib/rootfs
/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-fsl-linux-gnueabi-g++
You might get fontconfig errors, which you need to solve by analysing
the error.
Although i was able to install QT5 , i still have problems with fonts, i
am not able to see fonts in the GUI. i am working on it.
regards
nishad
Ok nishad, i'm waiting for your procedure ! thank's in advance !
Hi ,
I successfully cross compiled QT5 for my custom iMX6Q board,
I used LTIB 3.0.35_4.1.0 kernel for building my u-boot, kernel and rootfs.
I am attaching documents and links that i prepared to help anyone who
wishes to build QT5, it might not help you directly, but the procedure
should help you.
regards,
Nishad
Hi all, i'm trying to build qt5 for a udoo quad board (use imx6 quad http://www.udoo.org/) but i'm blocked at ./configure. i had some errors :
/home/modjo/Udoo/Qt5_build/fsl-linaro-toolchain/arm-fsl-linux-gnueabi/bin/g++ -c -pipe -march=armv7-a -mfpu=neon -DLINUX=1 -DEGL_API_FB=1 -mfloat-abi=softfp -g -Wall -W -fPIE -I../../mkspecs/devices/linux-imx6-g++ -I. -I../../../../usr/include -I../../../../usr/bin -o arch.o arch.cpp
g++: error trying to exec 'cc1plus': execvp: No such file or directory
Messages de l'assembleur:
Erreur fatale: option -march= invalide: « armv7-a »
gmake: *** [arch.o] Erreur 1
Unable to determine architecture!
Could not determine the target architecture!
Turn on verbose messaging (-v) to see the final report.
Determining architecture... ()
g++ -c -pipe -g -Wall -W -fPIE -I../../mkspecs/linux-g++ -I. -o arch.o arch.cpp
g++ -o arch arch.o
Found architecture in binary
CFG_HOST_ARCH="i386"
CFG_HOST_CPUFEATURES=""
System architecture: 'unknown'
Host architecture: 'i386'
C++11 auto-detection... ()
/home/modjo/Udoo/Qt5_build/fsl-linaro-toolchain/arm-fsl-linux-gnueabi/bin/g++ -c -pipe -march=armv7-a -mfpu=neon -DLINUX=1 -DEGL_API_FB=1 -mfloat-abi=softfp -O2 -std=c++0x -Wall -W -fPIE -I../../../mkspecs/devices/linux-imx6-g++ -I. -I/home/modjo/Udoo/Qt5_build/usr/include -I/home/modjo/Udoo/Qt5_build/usr/bin -o c++11.o c++11.cpp
g++: error trying to exec 'cc1plus': execvp: No such file or directory
Messages de l'assembleur:
Erreur fatale: option -march= invalide: « armv7-a »
gmake: *** [c++11.o] Erreur 1
C++11 disabled.
.......
......
......
......
OpenGL ES 2.x auto-detection... ()
/home/modjo/Udoo/Qt5_build/fsl-linaro-toolchain/arm-fsl-linux-gnueabi/bin/g++ -c -pipe -march=armv7-a -mfpu=neon -DLINUX=1 -DEGL_API_FB=1 -mfloat-abi=softfp -O2 -Wall -W -fPIE -I../../../mkspecs/devices/linux-imx6-g++ -I. -I/home/modjo/Udoo/Qt5_build/usr/include/GLES2 -I/home/modjo/Udoo/Qt5_build/usr/include -I/home/modjo/Udoo/Qt5_build/usr/bin -o opengles2.o opengles2.cpp
g++: error trying to exec 'cc1plus': execvp: No such file or directory
Messages de l'assembleur:
Erreur fatale: option -march= invalide: « armv7-a »
gmake: *** [opengles2.o] Erreur 1
OpenGL ES 2.x disabled.
The OpenGL ES 2.0 functionality test failed!
You might need to modify the include and library search paths by editing
QMAKE_INCDIR_OPENGL_ES2, QMAKE_LIBDIR_OPENGL_ES2 and QMAKE_LIBS_OPENGL_ES2 in
/home/modjo/Udoo/Qt5_build/qt5/qtbase/mkspecs/devices/linux-imx6-g++.
For information the Udoobuntu file system : http://www.udoo.org/downloads/
the link for the tutorial : http://www.udoo.org/ProjectsAndTutorials/how-to-build-qt5-for-udoo/?portfolioID=1394
my qmake.conf :
include(../common/linux_device_pre.conf)
ROOTFS_PATH=/home/modjo/Udoo/Qt5_build
TOOLCHAIN_PREFIX=/home/modjo/Udoo/Qt5_build/fsl-linaro-toolchain/arm-fsl-linux-gnueabi/bin
EGLFS_PLATFORM_HOOKS_SOURCES = $$PWD/qeglfshooks_imx6.cpp
QMAKE_INCDIR += $${ROOTFS_PATH}/usr/include $${ROOTFS_PATH}/usr/bin
QMAKE_LIBDIR += $${ROOTFS_PATH}/usr/lib/arm-linux-gnueabihf $${ROOTFS_PATH}/usr/lib
QMAKE_INCDIR_OPENGL_ES2 += /home/modjo/Udoo/Qt5_build/usr/include/GLES2
QMAKE_LIBDIR_OPENGL_ES2 += /home/modjo/Udoo/Qt5_build/usr/lib/GLESv2
#QMAKE_LIBS_EGL += /home/modjo/Udoo/Qt5_build/usr/lib/GLESv2
#QMAKE_LIBS_OPENGL_ES2 += /home/modjo/Udoo/Qt5_build/usr/lib/GLESv2
#QMAKE_LIBS_OPENVG += /home/modjo/Udoo/Qt5_build/usr/lib/OpenVG
QMAKE_LIBS_EGL += -lEGL
QMAKE_LIBS_OPENGL_ES2 += -lGLESv2 -lEGL -lGAL
QMAKE_LIBS_OPENVG += -lOpenVG -lEGL -lGAL
QMAKE_LFLAGS += -Wl,-rpath-link,$$/home/modjo/Udoo/Qt5_build/lib/arm-linux-gnueabihf
IMX6_CFLAGS = -march=armv7-a -mfpu=neon -DLINUX=1 -DEGL_API_FB=1
QMAKE_CFLAGS += $$IMX6_CFLAGS
QMAKE_CXXFLAGS += $$IMX6_CFLAGS
include(../common/linux_arm_device_post.conf)
load(qt_config)
and my configure :
./configure -prefix /opt/qt5 -make libs -no-pch -no-opengl -device imx6 -device-option CROSS_COMPILE=/home/modjo/Udoo/Qt5_build/fsl-linaro-toolchain/arm-fsl-linux-gnueabi/bin/ -no-largefile -opengl es2 -qt-zlib -qt-libpng -qt-libjpeg -no-nis -no-cups -gui -make examples -sysroot /home/modjo/Udoo/Qt5_build/exemples -no-gcc-sysroot -opensource -confirm-license -qreal float -v
Do you an idea to resolve this ?
I'm building qt-5.1.1 from dora branch of yocto project. All fine works instead HTML5 video from simple browser in qtwebkit-examples
I see player controls, but it doesn't work. On some videos i can view freeze frame of videos, but it not playing.
In console gstreamer output messages like this:
Qt Warning: Could not find a location of the system's Compose files. Consider setting the QTCOMPOSE environment variable.
libpng warning: iCCP: Not recognizing known sRGB profile that has been edited
Received finished signal while progress is still: 10 Url: QUrl( "http://qt-project.org/" )
Aiur: 3.0.11
Core: MPEG4PARSER_06.07.04 build on Dec 5 2013 11:41:38
mime: video/quicktime; audio/x-m4a; application/x-3gp
file: /usr/lib/imx-mm/parser/lib_mp4_parser_arm11_elinux.so.3.2
Content Info:
URI:
https://r1---sn-8xb5-px8e.googlevideo.com/videoplayback?ip=212.90.165.14&require
ssl=yes&mws=yes&source=youtube&upn=4-tA0Ie6tDA&mv=m&sparams=id,ip,ipbits,itag,ra
tebypass,requiressl,source,upn,expire&key=yt5&ipbits=0&mt=1401803916&id=o-ABczKx
qqFwtM_XhBgSvGnsGqyiHL18Wy6SqK0BZepcFQ&signature=121A2CB3142FB772CD72A9F1D872603
C749A2B74.0370EDFC498A96A43C8F8A98C10184E14158A0D2&sver=3&ratebypass=yes&expire=
1401827798&ms=au&fexp=908548,912321,913434,916611,923341,926122,930008&itag=18&c
pn=VgAqvxj2iI2hp45w&ptk=youtube_none&pltype=contentugc&c=WEB&cver=html5
Seekable : Yes
Size(byte): 32830110
Movie Info:
Seekable : Yes
Live : No
Duration : 0:11:52.503360000
ReadMode : Track
Track : 2
Track 00 [video_000000] Enabled
Duration: 0:11:52.503360000
Language: und
Mime:
video/x-h264, parsed=(boolean)true, width=(int)640, height=(int)360, framerate=(
fraction)24000/1001
Track 01 [audio_000000] Enabled
Duration: 0:11:52.503360000
Language: und
Mime:
audio/mpeg, mpegversion=(int)4, channels=(int)2, rate=(int)44100, bitrate=(int)9
6000, framed=(boolean)true, stream-format=(string)raw, codec_data=(buffer)121000
00000000000000000000000000
Beep: 3.0.11
Core: AAC decoder Wrapper build on Jan 22 2014 15:42:53
mime: audio/mpeg, mpegversion=(int){2,4}
file: /usr/lib/imx-mm/audio-codec/wrap/lib_aacd_wrap_arm12_elinux.so.3
CODEC: BLN_MAD-MMCODECS_AACD_ARM_03.07.00_CORTEX-A8 build on Sep 18 2013 10:29:53.
[--->FINALIZE aiurdemux
QtMultimedia examples working correctly.
Whats wrong and how can I fix it?
I am trying to setup a cross compiler setup for the RIOT (IMX6) on opensuse 13.21 (64), as I would like to use qt with qws under Ubuntu Image (Must still figure out how-to disable the GUI, as this is not a 'standard' Unbuntu startup)
Step 6 assumes one has a cross compiler already installed.
export PATH=$PATH:/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/
How can I install this, where can I download it, as it seem to 'included' in some BSD package.
Thanks
Hey,
I successfully installed qt 4.8 in my target.
Initially i had 4.6.0 on my target, which had audio demo codes. 4.8 doesn't seem to have any multimedia demos. The existing examples execute correctly. however any example which i used to
run in 4.6.0 using qws doesn't seem to execute on 4.8. It crashes with a "segmentation fault".
I have qtCreater 2.7.2 with Qt 4.8.4 on my host, and any example code for instance a system call code or a mmap call doesn't seem to work.
I had shifted to 4.8 assuming and expecting better audio and Serial communication support. but simple codes compiled do not work in ltib. It is very frustrating.
Can anyone please help me out with that.
regards,
nishad
I found out that the hellogl_es2 example is not able to run when you dont have X11 or wayland. You need a windowing system because the hellogl_es2 encapsulates an QGLWidget within another widget. Better is to use QT5 + QML. I will give it a try. And probably your error is because you have to edit the file qtbase/mkspecs/devices/linux-imx6-g++/qmake.conf and add -mfloat-abi=hard in IMX6_CFLAGS. Give it a try.
AFAIK the qt-in-use-image only produces a rootfs for Qt 4.8 - but still the version should be good enough to compile the hellogl_es2 example.
I tried to compile the application with my Qt 5.1.1 toolchain (see link in my previous comment) but it didn't work - gnu/stubs-soft.h wasn't found... I didn't recognize this error before and don't know how to handle this - so sorry, I cant help you with that ![]()
Hey I am experimenting with Yocto and my Mx6 Board. I am using dora and I used qte-in-use-image to "bake" an image. I want to experiment with QT + OpenGL using the framebuffer.
I disable X11 and Wayland with the flag: DISTRO_FEATURES_remove = "x11 wayland" on my local.conf
I am able to run the vivante vdk examples but I have not being able to run the hellogl_es2 example from OpenGL. I get a pitch black rendering. Have you being able to run the OpenGL examples from QT?
Hello Bradley,
I'm starting with IMX6 and Qt.
I followed the instructions but I'm having the same issue as yours. I have the same directories after the install, nothing more, and some errors during "make" and "make install".
Did you find a solution to build Qt4.8 for the IMX6?
Nicolas
Hi,
I solved that issue.
It would be a good choice to comment out those code which reports “EGLFS: OpenGL windows cannot be mixed with others”, that would make it fine.
Kind regards
Richard Chen
I would suggest everyone who uses already YOCTO for their images to also use it to compile Qt
See for a working Qt5 tutorial here:
Everyone who doesn't use YOCTO not 'til now: DO IT :smileygrin: read more about it in the Yocto Training - HOME
If you want to use Qt4, you can do this even easier because of the different layers that YOCTO delivers...
for the board: qt-in-use-image or qte-in-use-image
as toolchain: meta-toolchain-qt or meta-toolchain-qte
Have fun!
Hi, xicai chen.
I have the same problem with hellowindow application in Qt 5 (EGLFS: OpenGL windows cannot be mixed with others)
You solved it?
As I noticed that there is a patch file 0001-add-i.MX6-EGL-support.patch for Qt 4.8, however, there is not such a patch for QT5.
Did you miss it? There might be a similar patch to Qt5.
As I tried the hellowindow application in Qt 5.1, I got error log as follow. Do you have any hints?
QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed
QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed
QEglFSImx6Hooks will set environment variable FB_MULTI_BUFFER=2 to enable double buffering and vsync.
If this is not desired, you can override this via: export QT_EGLFS_IMX6_NO_FB_MULTI_BUFFER=1
EGLFS: Unable to query physical screen size, defaulting to 100 dpi.
EGLFS: To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
EGLFS: OpenGL windows cannot be mixed with others.
Aborted
First: I'm a very beginner in developing software for Linux Embedded. So may be my questions
are very basic. I'm sorry for that.
I need to cross-compile a QT 5 program from a PC based Ubuntu system to a i.MX6 board.
I already built the O.S. for the board following the instructions of the page
"https://github.com/Freescale/fsl-community-bsp-platform".
Now I'm trying to set up QT following the
https://community.freescale.com/docs/DOC-94066
document, i.e. this page.
I did step 1, 2, 3 and 4.
At step 5 gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12 is referenced.
Where can I find it?
I looked for it on http://www.linaro.org/ site but I didn't find it.
Thanks!
Hi,
I would like to cross compile tool chain and prebuilt rootfs based on ltib to cross compile Qt5.x for IMX6 Sabre AI board. Please let me know where can I download the same so that I can use the same cross compiler tool chain and rootfs used in this thread.
Thanks,
Ramakanth
Thanks Juha,
It seems with latest version of qtdeclarative this issue is fixed ![]()
Thanks again
That's a real bug in Qt, see workaround in: https://bugreports.qt-project.org/browse/QTBUG-34065
(I would guess you are actually compiling post 5.1 version, 5.1.1 should compile just fine. If you cloned the qt5 sources remember to checkout the appropriate git tag to get 5.1.1)
Hello,
I have following problem during build of latest Qt5.1
compiler/qv4isel_masm_p.h: In member function 'void QQmlJS::MASM::Assembler::storeUInt32(JSC::AbstractMacroAssembler<:armassembler>::RegisterID, QQmlJS::MASM::Assembler::Pointer)':
compiler/qv4isel_masm_p.h:1212:63: error: 'convertUInt32ToDouble' was not declared in this scope
compiler/qv4isel_masm_p.h: In member function 'void QQmlJS::MASM::InstructionSelection::convertUIntToDouble(QQmlJS::V4IR::Temp*, QQmlJS::V4IR::Temp*)':
compiler/qv4isel_masm_p.h:1491:18: error: 'class QQmlJS::MASM::Assembler' has no member named 'convertUInt32ToDouble'
compiler/qv4isel_masm_p.h:1493:18: error: 'class QQmlJS::MASM::Assembler' has no member named 'convertUInt32ToDouble'
compiler/qv4isel_masm.cpp: In member function 'virtual void QQmlJS::MASM::InstructionSelection::visitRet(QQmlJS::V4IR::Ret*)':
compiler/qv4isel_masm.cpp:1978:22: error: 'class QQmlJS::MASM::Assembler' has no member named 'convertUInt32ToDouble'
compiler/qv4isel_masm.cpp: In member function 'JSC::AbstractMacroAssembler<:armassembler>::Jump QQmlJS::MASM::InstructionSelection::genTryDoubleConversion(QQmlJS::V4IR::Expr*, JSC::MacroAssemblerARM::FPRegisterID)':
compiler/qv4isel_masm.cpp:2172:14: error: 'class QQmlJS::MASM::Assembler' has no member named 'convertUInt32ToDouble'
Qt5 git version
commit cb2d850b479fed9fed3c4a9fea698f924be942ef
Author: Qt Submodule Update Bot <[email protected]>
Date: Tue Oct 15 22:00:06 2013 +0300
LTIB 4.
Kindly let me know if you have solution?
Thanks & Regards
Hi,
My QT4.8 had been built success,but when I test the example in my target board,it shows error:
root@freescale /opt/qt4.8-arm-elink/examples/opengl/hellogl_es2$ ./hellogl_es2 -platform eglfs
./hellogl_es2: error while loading shared libraries: libQtOpenGL.so.4: cannot open shared object file: No such file or directory
what can I do to solve it?
Hello,
Building seems to work fine for me but when I try to start one of the example project I get this error:
root@freescale /opt/qt5/examples/opengl/hellowindow$ ./hellowindow -platform eglfs
QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed
QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed
idr_remove called for id=2126092104 which is not allocated.
[<8004f72c>] (unwind_backtrace+0x0/0x138) from [<8024d930>] (idr_remove+0x1f8/0x208)
[<8024d930>] (idr_remove+0x1f8/0x208) from [<802bb51c>] (drm_ctxbitmap_free+0x24/0x30)
[<802bb51c>] (drm_ctxbitmap_free+0x24/0x30) from [<802bba28>] (drm_rmctx+0x5c/0x10c)
[<802bba28>] (drm_rmctx+0x5c/0x10c) from [<802bc064>] (drm_ioctl+0x2d0/0x3b4)
[<802bc064>] (drm_ioctl+0x2d0/0x3b4) from [<8010b344>] (do_vfs_ioctl+0x80/0x558)
[<8010b344>] (do_vfs_ioctl+0x80/0x558) from [<8010b854>] (sys_ioctl+0x38/0x5c)
[<8010b854>] (sys_ioctl+0x38/0x5c) from [<80048600>] (ret_fast_syscall+0x0/0x30)
Segmentation fault
root@freescale /opt/qt5/examples/opengl/hellowindow$
Any clue about what this can be?
Hi, all.
When i test qt5 example on target board, (./hellogl_es2) I have below error.
"This application failed to start because it could not find or load the Qt platform plugin "eglfs"."
Please share any tip about this eglfs error.
thank you.
jessie.
Hi Michael,
If you're running under X, you really want X to be accelerated, not Qt, and you should probably just use apt-get to install it.
Hi Michael,
eglvivante.h is included by eglplatform.h, which is included by egl.h.
Do you have the configuration patches:
qt4: Enable OpenGL ES2 support for i.MX6 · edcd4a6 · Freescale/meta-fsl-arm · GitHub
Eric, still question:
I have a SABRElite board, which runs freescale Ubuntu image with X-window desktop.
Now I want to run a QT application on X-window of my devboard.
This manual (Building QT for i.MX6) Is suitable for my task?
Thanks!
Regards, Michael
Hi Eric!
Thanks for your answer.
Yes, I have these declarations in EGL/eglvivante.h, but in my qt-4.8.4/src/plugins/platforms/eglfs/qeglfsscreen.cpp (after EGL support patch) I have no link to EGL/eglvivante.h
Where I need to add the reference to EGL/eglvivante.h, in qeglfsscreen.cpp, in qeglfsscreen.h or in eglfs.pro?
I added everywhere, but the effect isn't present, there is the same compilation error.
>> Did you include gpu-viv-bin-mx6q in your LTIB configuration?
I don't use a LTIB, I use a ready freescale Ubuntu rootfs image L3.0.35_4.0.0_UBUNTU_RFS from https://community.freescale.com/docs/DOC-94809
How to solve this problem?
Thanks again!
Regards, Michael
Hi Michael,
These declarations should be in EGL/eglvivante.h:
~/ltib4-nox/rootfs/usr/include$ grep -r fbGetDisplayByIndex * EGL/eglvivante.h:fbGetDisplayByIndex(
Did you include gpu-viv-bin-mx6q in your LTIB configuration?
Hi all!
I followed the instructions to build QT4.8 for my target, Boundary's SABRElite board. Unexpectedly, in step 9 (Now need to build eglfs plugin), I got the compiling error
qeglfsscreen.cpp: In constructor 'QEglFSScreen::QEglFSScreen(EGLNativeDisplayType)':
qeglfsscreen.cpp:109:43: error: 'fbGetDisplayByIndex' was not declared in this scope
qeglfsscreen.cpp:110:57: error: 'fbGetDisplayGeometry' was not declared in this scope
qeglfsscreen.cpp: In member function 'void QEglFSScreen::createAndSetPlatformContext()':
qeglfsscreen.cpp:181:95: error: 'fbCreateWindow' was not declared in this scope
make: *** [.obj/release-shared/qeglfsscreen.o] Error 1
Any help?
Regards, Michael
Yeah, I am also thinking to build it using QT5 now, Anyway thanks for your replies ![]()
cheers
Regards,
Sarjoon
Sorry, no, hopefully there will be an update with build in QT5 support...
I also tried to work out things with Qt4, but not much success there
either... = (
with Regards,
Zoltan
Oh.. you have any idea regarding that.
With Regards,
Sarjoon
Anyway thanks for the replay Zoltan ![]()
No, I don't have those solved yet unfortunately...
with Regards,
Zoltan
U mean you also had that input issue.. The issue I am facing is once after I run the demo application ./hellowindow -platform eglfs.. i cant give any input(I want to use touch). Nothing is working regarding touch.. I exported all the necessary Tslib variables and all.
Did the library files which u found is anything to do with the touch issue..
You also mentioned "unfortunately they didn't solve all the problems"
Hi I found some libs,
https://github.com/zOrg1331/fsl-gpu-viv-mx6q/tree/master/usr/lib, but
those are old,
and unfortunately they didn't solve all the problems. Incompatibility
issues remain.
with Regards,
Zoltan
I also have the same problem, Did U find any solution ragarding this
edit the build/conf/local.conf
Thanks.
Yes, I am running Ubuntu. I followed the article from the "Yocto With Boundary Device's Nitrogen6x: 5 steps only!" . I did not install all the necessary software on my system. I will do the installation as you point to me. Thanks again.
Hi squirem,
I got run bitbake fsl-image-gui, but I found the MACHINE=imx6qsabresd is not I wanted. My board is Nitrogen6x board from Boundary. How to change it to MACHINE=nitrogen6x? Could you please help?
By the way, I need Qt4.8.4 libraries on the image. Does the building image has been added Qt4.8.4?
Thanks,
Are you sure you followed the steps outlined here: https://github.com/Freescale/fsl-community-bsp-platform
Also, are you sure you have all the necessary software installed on your system. See the Yocto Project Quick Start Guide and look under packages: https://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html
I'm guessing you're running Ubuntu, which means this command would install the software you need:
sudo apt-get install gawk wget git-core diffstat unzip texinfo \
build-essential chrpath libsdl1.2-dev xterm
Hi,
I followed the instructions and when I ran "bitbake core-image-minimal". It pop up following error.
Pseudo is not present but is required, building this first before the main build
ERROR: OE-core's config sanity checker detected a potential misconfiguration.
Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
Following is the list of potential problems / advisories:
Please install the following missing utilities: gawk,chrpath
Then I ran "apt-get install gawk chrpath". It pop up info as below.
The following packages were automatically installed and are no longer required:
libp11-kit-dev libgpg-error-dev comerr-dev libqt3-headers libgnutls-openssl27
libkrb5-dev liblcms1-dev libgnutlsxx27 libgssrpc4 libxt-dev libxmu-dev
libtasn1-3-dev libcups2-dev libqt3-compat-headers qt3-dev-tools libgcrypt11-dev
libkadm5clnt-mit8 libaudio-dev libkadm5srv-mit8 libxmu-headers libkdb5-6
libgnutls-dev krb5-multidev
Do I have to remove them using "apt-get autoremove ......."?
Hi Zoltan,
i am having the same issue, also with another MPUs from several vendors. I have not solved it yet, but it looks like its a problem related with the rootfs, specifically with simlinks and lib paths.
There is a nice guide for a raspberry-pi device which i tried, and worked nice, but only with the rootfs image they specified (raspbian wheezy image): http://qt-project.org/wiki/RaspberryPi_Beginners_guide
When i tried to use my own rootfs, i have the problem you have had. Looks like the fix they propose could be the solution. That is to run a script to fix symlinks and libpaths, included in the croos-compiled-tools they provide.
I tried that but with no succes. Eventhough, everywhere in the web looks like that old configures files, can be a really headache, so it's really important to clean the files generated in the configure. Here it's very important to say, that the only actual way to do that, is cleaning the repository with:
git submodule foreach --recursive "git clean -dfx"
because "make confclean" doesn't really work in Qt5 and "make clean" only cleans ol the .o and others files, but no all the configurations generated with ./configure. So, to download a tar.gz and use this a source code, should not be an option for Qt5.
Would really love to solve this problem with the imx6, using my own rootfs generated with buildroot (in my case). Any help?
Regards,
Santiago
No @ -no-gcc-sysroot vs. -sysroot
This was made for the freescale-linaro toolchain from ltib, because it doesn't allow you to set -sysroot as all the basic posix building-blooks were located within the toolchain and setting -sysroot in for gcc ruins it.
So the combination of '-sysroot' and '-no-gcc-sysroot' results in Qt5 to do some magic in the background (e.g. PKG variables) but doesn't result in adding '--sysroot' to the gnu flags
Hi Joerg,
Thanks for your replying my question. Currently I need to build QT4.8 on my image in LTIB. We shall late on consider the Yocto image since it has QT built in.
I googled and looked at the relate posts that mentioned needing to install libjpeg-dev. I wonder if any one in this thread knows how to fix?
Hallo Bill,
no need to do that for 4.8
Have a look at this
https://community.freescale.com/message/339555#339555
Joerg
Hi,
I followed the instructions to build QT4.8 for my target, Boundary's Nitrogen6x board. Unfortunately, in step 8, when it was building, I got the compiling error "fatal error: jpeglib.h: No such file or directory". I wonder if you guys have any comment about the error listing below.
cd "/home/byang/qt/./src/plugins/imageformats/jpeg"
make Makefile
make[4]: Entering directory `/home/byang/qt/src/plugins/imageformats/jpeg'
make[4]: `Makefile' is up to date.
make[4]: Leaving directory `/home/byang/qt/src/plugins/imageformats/jpeg'
make[3]: Leaving directory `/home/byang/qt/src/plugins/imageformats/jpeg'
make[3]: Entering directory `/home/byang/qt/src/plugins/imageformats/jpeg'
arm-fsl-linux-gnueabi-g++ -c -pipe -O2 -O2 -march=armv7-a -mfpu=neon -DLINUX=1 -DEGL_API_FB=1 -fvisibility=hidden -fvisibility-inlines-hidden -D_REENTRANT -Wall -W -fPIC -DQT_NO_DEBUG -DQT_PLUGIN -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I../../../../mkspecs/qws/linux-imx6-g++ -I. -I../../../../include/QtCore -I../../../../include/QtNetwork -I../../../../include/QtGui -I../../../../include -I../../../gui/image -I.moc/release-shared -I/home/byang/ltib/rootfs/usr/include -I/tftpboot/rootfs/usr/include/arm-linux-gnueabi/ -o .obj/release-shared/qjpeghandler.o ../../../gui/image/qjpeghandler.cpp
../../../gui/image/qjpeghandler.cpp:71:21: fatal error: jpeglib.h: No such file or directory
compilation terminated.
make[3]: *** [.obj/release-shared/qjpeghandler.o] Error 1
Hi,
I was recently trying to build QT5 for iMX6 board using the instructions above.
rootfs: L3.0.35_4.0.0_UBUNTU_RFS
configure:
./configure -v -opensource -confirm-license -no-pch -no-xcb -no-opengl -opengl es2 -make libs -device imx6 -device-option CROSS_COMPILE=/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.06_linux/bin/arm-linux-gnueabihf- -sysroot /home/max/Dev/rootfs -no-gcc-sysroot -prefix /opt/Qt5-imx6
unfortunately I have the following error:
/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.06_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.8.2/../../../../arm-linux-gnueabihf/bin/ld: error: opengles2 uses VFP register arguments, opengles2.o does not
/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.06_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.8.2/../../../../arm-linux-gnueabihf/bin/ld: failed to merge target specific data of file opengles2.o
...
/home/max/Dev/rootfs/usr/lib/libGAL.so: undefined reference to `XMapRaised'
/home/max/Dev/rootfs/usr/lib/libGAL.so: undefined reference to `pthread_setspecific@GLIBC_2.4'
/home/max/Dev/rootfs/usr/lib/libGAL.so: undefined reference to `_XReadPad'
/home/max/Dev/rootfs/usr/lib/libGAL.so: undefined reference to `dlopen@GLIBC_2.4'
/home/max/Dev/rootfs/usr/lib/libGAL.so: undefined reference to `pthread_key_delete@GLIBC_2.4'
/home/max/Dev/rootfs/usr/lib/libGAL.so: undefined reference to `XPending'
collect2: error: ld returned 1 exit status
make: *** [opengles2] Error 1
OpenGL ES 2.x disabled.
The OpenGL ES 2.0 functionality test failed!
You might need to modify the include and library search paths by editing
QMAKE_INCDIR_OPENGL_ES2, QMAKE_LIBDIR_OPENGL_ES2 and QMAKE_LIBS_OPENGL_ES2 in
/home/max/Dev/repository/qt5/qtbase/mkspecs/devices/linux-imx6-g++.
Then if I take out ES, I have: "Could not determine the target architecture!"
Can somebody comment on this? Any help?
Does the attached patch suppose to fix that?
Thanks!
Max
Hello Brad,
I will be the best someone who knows write a new Howto "Setup QT Creator" with Yocto based QT, rootfs and toolchain. But slowly I believe that no one really knows how to do that
Joerg
OK. I used a link to ~/imx6/ltib/rootfs since I'm only doing NFS boot and I've already created a rootfs with LTIB.
Running configure generates several errors.
However, I am able to make and make install most of the files into /opt/qt4.
But the second bullet in Step #12 makes no sense.
Furthermore, there is no opt/qt4/examples directory.
Here is what is what is there:
root@freescale /$ ls opt/qt4
bin include lib plugins
Any ideas of where I might be having problems. I've followed the directions very carefully.
Brad
you have to place "/media/NameOfMountedRootFs" as ROOTFFS
I am trying to build Qt4 as per the instructions above.
In Step #2 is this command:
$ ln -s $(ROOTFFS) rootfs
When I try to run it, it states that the variable "ROOTFFS: command not found."
Any idea why this failed? I tried ROOTFS and still had the same error.
Is ROOTFFS the qt install directory? Where is it defined? It's not in my environment.
It's on the master-next branch, so it's not ready quite yet.
sure that Qt5 is added? Witch repo to check out? dylan and what to build?
Joerg
Follow the instructions that are in the documentation. You can download the documentation package from freescale site.
I have downloaded the Image (L3.0.35_4.0.0_130424_images_MX6) How to put it on SD?
I just checked what machines are supported in the BSP I linked to. It seems that your board nitrogen6x is supported, and there does appear to be a set of Qt4 recipes for the demo image you are referring to: Photo Album - Imgur
So I can use a Image build with yocto? like fsl-image-gui-nitrogen6x.sdcard
He is referring to the prebuilt images which can be found under the "Operating System Software - Board Support Packages" section of whatever chip you're using. In my case, for the SabreSD board: L3.0.35_4.0.0_DEMO_IMAGE
You are right about LTIB and Yocto. Freescale is moving towards Yocto and the LTIB platform can be buggy. Use the Freescale community BSP instead: Freescale/fsl-community-bsp-platform · GitHub
The instructions are in the link. After compilation, an SD card image is generated that can be directly copied to an actual SD card and will run on whatever board you're using. There is already full Qt4 support and Qt5 support is only recently being added (added about a week ago).
Hi,
what is the meaning of "The build is verified on prebuilt rootfs(based on LTIB) which can be downloaded from freescale.com" I have to build it with ltib or can i download it? When I can download it, please explain how to use it on host.
To use LTIB makes little sense, because Yocto is preferred.
I try now to do LTIB for a couple of days without success.
regards
Joerg
Here's my configure script:
#!/bin/sh
./configure -v -opensource -confirm-license -no-pch -no-xcb -opengl es2 \
-make libs -device imx6 \
-make examples -make demos \
-device-option CROSS_COMPILE=/home/squirem/Desktop/poky-dylan-9.0.0/build/tmp/sysroots/x86_64-linux/usr/bin/armv7a-vfp-neon-poky-linux-gnueabi/arm-poky-linux-gnueabi- \
-sysroot /home/squirem/Desktop/poky-dylan-9.0.0/build/tmp/deploy/images/mountpoint \
-prefix /opt/qt5
Notice I removed the -no-opengl and -no-gcc-sysroot options. I think the -no-opengl option conflicts with the -opengl es2 option and the -no-gcc-sysroot option conflicts with the -sysroot
As a side note, I think you can add more options to remove SQL support. Run ./configure -h to look at your options.
Question:
I follow the instruction as above to build QT5,
but I found the configure command is incorrect to my environment.
so I change the configure command as below:
./configure -v -opensource -confirm-license -system-sqlite -no-sse2 -no-sse3 -no-ssse3 -no-sse4.1 -no-sse4.2 -no-avx -no-xcb -no-sql-mysql -no-sql-db2 -no-sql-ibase -no-sql-oci -no-sql-odbc -no-sql-tds -no-sql-sqlite2 -no-pch -no-opengl -opengl es2 -wayland -make libs -device imx6 -make examples -make demos -device-option CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-fsl-linux-gnueabi- -sysroot /media/new-version/build/L3.0.35_4.0.0/ltib/rootfs -no-gcc-sysroot -prefix /usr/local/Trolltech/Qt5-imx6-1
It pass but I got problem when I run 'make'
/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-fsl-linux-gnueabi-g++ -Wl,-rpath-link,/media/new-version/build/L3.0.35_4.0.0/ltib/rootfs/usr/lib -Wl,--no-undefined -Wl,-O1 -Wl,-rpath,/usr/local/Qt-5.0.0/Qt5-imx6-1/lib -shared -o libqsqlmysql.so .obj/release-shared/main.o .obj/release-shared/qsql_mysql.o .obj/release-shared/moc_qsql_mysql_p.o -L/media/new-version/build/L3.0.35_4.0.0/ltib/rootfs/usr/lib -L/usr/lib -Wl,-Bsymbolic-functions -rdynamic -L/usr/lib/mysql -lmysqlclient_r -L/media/new-version/build/ltib/rpm/BUILD/qt5/qtbase/lib -lQt5Sql -lQt5Core -lpthread
/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/../lib/gcc/arm-fsl-linux-gnueabi/4.6.2/../../../../arm-fsl-linux-gnueabi/bin/ld: skipping incompatible /usr/lib/libpthread_nonshared.a when searching for libpthread_nonshared.a
/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/../lib/gcc/arm-fsl-linux-gnueabi/4.6.2/../../../../arm-fsl-linux-gnueabi/bin/ld: skipping incompatible /usr/lib/libc_nonshared.a when searching for libc_nonshared.a
.obj/release-shared/qsql_mysql.o: In function `QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&)':
qsql_mysql.cpp:(.text+0x2cb4): undefined reference to `mysql_set_character_set'
collect2: ld returned 1 exit status
I have cancel the option of the mysql when configure the QT5!
How to solve this problem?
thanks!
FAQ:
Question:
But I can not build qtdeclarative…
../qtbase/bin/qmake -r
Project WARNING: Unknown build part(s): demos
Reading /home/hp-lablinux/ltib_imx6solo_duallite/qt5/qtdeclarative/src/src.pro
Reading /home/hp-lablinux/ltib_imx6solo_duallite/qt5/qtdeclarative/src/qml/qml.pro
Project MESSAGE: /home/hp-lablinux/ltib_imx6solo_duallite/qt5/qtbase/bin/syncqt -module QtQml -version 5.1.0 -outdir /home/hp-lablinux/ltib_imx6solo_duallite/qt5/qtdeclarative /home/hp-lablinux/ltib_imx6solo_duallite/qt5/qtdeclarative
Project ERROR: Unknown module(s) in QT_PRIVATE: v8
Not sure what the problem is? I have looked around but not find any useful hints. Do you have an idea?
Solution:
“modify this file qtbase/bin/qt.conf
and add the correct prefix, the one given on cofigure
*configure
After running the configure command, in the summary of supported features, OpenVG appears as not supported, is this normal or it means some library is missing on my side?
Works like a charm. Thank you!
My only issue is that my mouse or keyboard doesn't work when running with eglfs. does eglfs support user input?