chschnell / build-qt5-rpi Goto Github PK
View Code? Open in Web Editor NEWBash script to fully cross-compile Qt 5 using a pure Debian host targeting a Raspberry Pi 2/3 without X11.
License: MIT License
Bash script to fully cross-compile Qt 5 using a pure Debian host targeting a Raspberry Pi 2/3 without X11.
License: MIT License
Everything is fine in may case... I created 2 deb packages qt-everywhere-opensource-host_5.9.4_amd64.deb and qt-everywhere-opensource-rpi_5.9.4_armhf.deb.
I'd like to integrade the amd package in qtcreator. how can i do ?
thanks
I have several identical rpis and would like to install Qt 5 on all of them. It would be nice to have a command "deploy" which just deploys the qt packages to a rpi that is named in the command line.
Raspberry Pi 3
Raspberry Pi OS: 2017-11-29-raspbian-stretch-lite
Host OS: debian-9.3.0-i386
../build-qt5-rpi/build-qt5-rpi.sh -s ../qt-everywhere-opensource-src-5.9.3 init config build install
Note: Dropped compiler flags '-pthread' when detecting library 'glib'.
Note: No wayland-egl support detected. Cross-toolkit compatibility disabled.
Note: Dropped compiler flags '-pthread' when detecting library 'gstreamer'.
Note: Dropped compiler flags '-pthread' when detecting library 'gstreamer_app'.
ERROR: Feature 'opengles2' was enabled, but the pre-condition 'config.win32 || (!config.watchos && !features.opengl-desktop && libs.opengl_es2)' failed.
ERROR: The OpenGL functionality tests 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 the mkspec for your platform.
Check config.log for details.
++ exit
+ exit_handler
+ '[' false = false ']'
+ echo_fail '*** Build failed'
+ set +o xtrace
[build-qt5-rpi] 00:10:11 *** Build failed
Hi,
i got the fellowing message :
/usr/bin/ld.gold: warning: skipping incompatible /usr/local/qt5-rpi-sysroot/usr/lib/arm-linux-gnueabihf/libpthread.so while searching for pthread
/usr/bin/ld.gold: fatal error: /usr/local/qt5-rpi-sysroot/usr/lib/arm-linux-gnueabihf/libdl.so: unsupported ELF machine number 40
collect2: error: ld returned 1 exit status
[2/10667] CXX host/obj/third_party/protobuf/protobuf_full/coded_stream.o
ninja: build stopped: subcommand failed.
Makefile.gn_run:1027 : la recette pour la cible « run_ninja » a échouée
make[4]: *** [run_ninja] Erreur 1
make[4] : on quitte le répertoire « /root/qt5.10.0/build/qtwebengine/src/core »
Makefile:80 : la recette pour la cible « sub-gn_run-pro-make_first » a échouée
make[3]: *** [sub-gn_run-pro-make_first] Erreur 2
make[3] : on quitte le répertoire « /root/qt5.10.0/build/qtwebengine/src/core »
Makefile:77 : la recette pour la cible « sub-core-make_first » a échouée
make[2]: *** [sub-core-make_first] Erreur 2
make[2] : on quitte le répertoire « /root/qt5.10.0/build/qtwebengine/src »
Makefile:46 : la recette pour la cible « sub-src-make_first » a échouée
make[1]: *** [sub-src-make_first] Erreur 2
make[1] : on quitte le répertoire « /root/qt5.10.0/build/qtwebengine »
Makefile:1027 : la recette pour la cible « module-qtwebengine-make_first » a échouée
make: *** [module-qtwebengine-make_first] Erreur 2
make : on quitte le répertoire « /root/qt5.10.0/build »
[[build-qt5-rpi.sh:267] exit
[build-qt5-rpi.sh:1] exit_handler
[build-qt5-rpi 00:01:18] *** Build failed
does anybody can help me ?
excuse me for the french notes..
thanks
Hi,
can you share any thoughts on why is it failing? Looks like the problem with sysroot/opt/vc/include/EGL/egl.h
, but the funny thing is that I managed to build Qt5.9.4 using same sysroot and following this manual: https://wiki.qt.io/RaspberryPi2EGLFS
Reason I try your recipe is that I failed to build qtwebengine with the official one :)
compiling /home/gleb/raspi2/qt-everywhere-opensource-src-5.9.3/qtbase/src/plugins/platforms/xcb/gl_integrations/xcb_egl/qxcbeglwindow.cpp
compiling .moc/moc_qgtk3dialoghelpers.cpp
compiling /home/gleb/raspi2/qt-everywhere-opensource-src-5.9.3/qtbase/src/plugins/imageformats/ico/qicohandler.cpp
compiling .moc/moc_qgtk3menu.cpp
compiling .moc/moc_qofonoservice_linux_p.cpp
/home/gleb/raspi2/qt-everywhere-opensource-src-5.9.3/qtbase/src/plugins/platforms/xcb/gl_integrations/xcb_egl/qxcbeglwindow.cpp: In member function ‘virtual void QXcbEglWindow::create()’:
/home/gleb/raspi2/qt-everywhere-opensource-src-5.9.3/qtbase/src/plugins/platforms/xcb/gl_integrations/xcb_egl/qxcbeglwindow.cpp:96:81: error: invalid conversion from ‘xcb_window_t {aka unsigned int}’ to ‘EGLNativeWindowType {aka void*}’ [-fpermissive]
m_surface = eglCreateWindowSurface(m_glIntegration->eglDisplay(), m_config, m_window, 0);
^
In file included from /home/gleb/raspi2/qt-everywhere-opensource-src-5.9.3/qtbase/include/QtEglSupport/5.9.3/QtEglSupport/private/../../../../../src/platformsupport/eglconvenience/qt_egl_p.h:65:0,
from /home/gleb/raspi2/qt-everywhere-opensource-src-5.9.3/qtbase/include/QtEglSupport/5.9.3/QtEglSupport/private/qt_egl_p.h:1,
from /home/gleb/raspi2/qt-everywhere-opensource-src-5.9.3/qtbase/src/plugins/platforms/xcb/gl_integrations/xcb_egl/qxcbeglinclude.h:49,
from /home/gleb/raspi2/qt-everywhere-opensource-src-5.9.3/qtbase/src/plugins/platforms/xcb/gl_integrations/xcb_egl/qxcbeglwindow.h:45,
from /home/gleb/raspi2/qt-everywhere-opensource-src-5.9.3/qtbase/src/plugins/platforms/xcb/gl_integrations/xcb_egl/qxcbeglwindow.cpp:40:
/home/gleb/raspi2/qt5.9.3/sysroot/opt/vc/include/EGL/egl.h:265:31: note: initializing argument 3 of ‘void* eglCreateWindowSurface(EGLDisplay, EGLConfig, EGLNativeWindowType, const EGLint*)’
EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config,
^
Makefile:1901: ошибка выполнения рецепта для цели «.obj/qxcbeglwindow.o»
Linux rasp 4.14.93-v7+ #1191 SMP Wed Jan 16 11:53:33 GMT 2019 armv7l GNU/Linux
i get message when i run ./configure -developer-build -opensource on Raspberry Pi 3
......
Note: Also available for Linux: linux-clang linux-icc
Note: Disabling X11 Accessibility Bridge: D-Bus or AT-SPI is missing.
Note: No wayland-egl support detected. Cross-toolkit compatibility disabled.
WARNING: gperf is required to build QtWebEngine.
WARNING: bison is required to build QtWebEngine.
WARNING: flex is required to build QtWebEngine.
ERROR: The OpenGL functionality tests 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 the mkspec for your platform.
I enable GL Driver with raspi-config ( G1 GL (Full KMS)...but i get the message above..
i can't figure it out...
thanks
Hi, thank you for this really good work.
I'm a bit curious is there any important reason why you include libgstreamer0.10-dev
and libgstreamer-plugins-base0.10-dev
at the times when there are gst-1.0 packages available?
I tried this on my Ubuntu 17.10 installation. Building qtwebengine failed because include file bits/c++config.h is not found (on Ubuntu host include files, not sysroot).
I disabled qtwebengine in configure statement but then the script failed because it tries to apply the patch. Would be nice if the script would check for existence of libQt5WebEngineCore_so_5_9_3.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.