[UPDATE Dec. 1st] Qt Developer's Dream RC-2 (Qt-5.6)

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

[UPDATE Dec. 1st] Qt Developer's Dream RC-2 (Qt-5.6)

Unread post by Tpimp » Thu Jul 16, 2015 8:53 am

Qt5 Developer's Dream Image (rc-1 has landed!)
Image
Image

Top Left is Qt3D example "Materials", then QtQuick example game "Maroon" (Runs very smooth and the sound even works without any configurations!), then below is the QtWebkit example "Flickrview" showing internet connectivity, html parsing and displaying and Odroids :D , then finally on the right you can see freshly built QtCreator 3.5.81 based on the Qt5.5.1 libs I built. Then at the bottom right you can see configuration for Qt 5.5.1 Kit (debug and release).

A lot still needs to be tested but in time we can work out the kinks. For now the biggest issues I have seen are in the Qt3D modules. Some examples work but others have issue with textures and some are just black.

The Qt Developer's Dream Image

Features:
UBUNTU 15.10 Wily Werewolf Alpha Build! (coming soon)
  • *-*Fully compiled Qt5 : Qt5Gui,Qt5Quick,Qt5Multimedia,Qt5Webkit,Qt5*(we have it all!).
    *-*Odroid-U3 NEON SIMD Fpu support (Improves image manipulations and memory operations)
    *-*Mali OpenGl ES2 support
    *-*LibAlsa support
    *-*FFMPEG 1.0 support
    *-*Sqlite 3 (and other DB plugins as well) support
    *-*Tons (almost all) plugins built (translations,multimedia,graphiceffects)
    *-*System wide manual installation (qtchooser support, QtCreator configured, CMAKE configuration files remapped :evil: )
    *-*Cool-Retro-Term built against new Qt libs.
    *-*CMAKE 3.3 Built from source
    *-*GCC 5.1 from Wily Werewolf packages
    *-*Qt Creator 3.5 built from source against Qt5.5 and GCC 5.1
PLANNED Features
  • *-*Lumina Desktop Environment (Tested NEEDS work)
    *-*SDDM fresh built Display Manager (testing)
    *-*Hawaii Desktop Environment (not yet started)
    *-*Fresh compile Phonon and LibPhonon (QT5) and their wrappers (also a dependency). - not started yet
    *-*Rebuild of VLC on new Qt5 libraries - not started yet
    *-*My own custom built Qt5 asynchronous GPIO C++ interface (https://github.com/Tpimp/qgpio/wiki) - Should be compatible with all Odroid Revisions and the I/O shield. - Soon
    *-*More by request :)
07/23/2015 - Release Qt Developer's Dream (Trusty) RC 1
08/23/2015 - Release Qt Developer's Dream (Trusty) RC 2
012/1/2015 - Release Qt Developer's Dream (Trusty) RC 2 for ODroid C1

Login: odroid
Password: odroid

After logging in:
-Use Odroid Utility to expand the filesystem.
-Login into forum and post a success message or questions you have.

Update July 25th New 1.7Gb image (can fit on an 8Gb SDCard/EMMC) MD5SUM - bc4eac6da0c759e4bd28c2d4a069043f
Actual size used ~6.4Gb on the File System , but uncompressed it will be 7.2Gbs

Update August 23rd Fixed QtCreator icon. eglfs_x11 as default. Improved cool-retro-term by adding fullscreen mode. Added Cool-Retro-Term DE (select from lightDM login). Updated QGpio but still not including it in image until QSoftPwm has more work and the other I/O interfaces are written.

Update December 1st Uploaded C1 image

Drive Link (RC2): -Download button is in the middle at the top
U3-Rc2-8Gb Compressed
C1-Rc2-8Gb Compressed
Dropbox Link (RC2):
8Gb image (compressed)
C1-Rc2-8Gb Compressed
MediaFire Link:
U2/U3 8Gb RC1

Added instructions for eglfs_x11 Single User Application Mode:
http://forum.odroid.com/viewtopic.php?f=52&t=15351

ENJOY :geek:
Last edited by Tpimp on Sat May 21, 2016 10:19 am, edited 60 times in total.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Build Instructions (Qt5)

Unread post by Tpimp » Thu Jul 16, 2015 8:57 am

Qt 5.6.0
This isn't much different than building Qt5 for other systems but I have included help in getting through errors along the way.

Starting with a fresh 14.04.2LTS image (hardkernel image by mdrjr)
using Odroid Utility Expand file system, Update kernel, Update packages, Rebuild Xorg, etc. (typical steps you might take with a fresh image)

NOTES AND WARNINGS
Qt5 is BIG! Compiling it is resource intensive and takes nearly 6 hours for a full build (using 4 cores).
You probably don't have enough space! Qt5 Built + source + dependencies are nearly 16GB total. I use a combination of 16GB mmc (boot and image) and a 32GB MicroSD (class 10) to build on.
You probably don't have enough time! Qtcreator in contrast with 4 cores seemed to take almost 3 hours to build. If you have errors and have to rebuild this can mean multiples days of working at this, hopefully this guide will reduce that.
I will help you with compile errors if I can, but NOOBs should hold off for the image.

Prerequisites for build
I had to add a swapfile (I make 4 512Mb files to reduce fragmentation and one for each core).

Code: Select all

cd /
sudo -s
fallocate -l 2G /swapfile1
fallocate -l 2G /swapfile2
chmod 0600 /swapfile1
chmod 0600 /swapfile2
mkswap /swapfile1
mkswap /swapfile2
swapon /swapfile1
swapon /swapfile2
free -m
The last two will verify it worked.
optionally, add them to fstab so they are available on restart

Code: Select all

/swapfile1   none   swap sw  0 0
/swapfile2   none   swap sw  0 0
/swapfile3   none   swap sw  0 0
/swapfile4   none   swap sw  0 0
After a restart grab the dependencies for compiling Qt5 from source

Code: Select all

sudo apt-get build-dep qt5-default
even after I ran this I usually attempt to install every possible dependency listed at https://wiki.qt.io/Building_Qt_5_from_Git

then follow the normal steps on the Building Qt5 wiki to clone the project.

1.)Getting the source code

First clone the top-level Qt 5 git repository:

Code: Select all

git clone git://code.qt.io/qt/qt5.git
or (if you're behind a firewall and want to use the https protocol):

Code: Select all

git clone https://code.qt.io/qt/qt5.git
Then check out the target branch (see Branch Guidelines):

Code: Select all

cd qt5
git checkout 5.5
Following the README.git we initialize the repository using the script init-repository which clones the various sub-modules of Qt 5. Relevant options:
--no-webkit : Consider skipping qtwebkit by passing this option. This module is quite big, takes a long time to compile and is often a source of compile errors, so it is recommend to only download it if you intend to use it. You can always re-run init-repository later on to add it.
--codereview-username <Jira/Gerrit username> : If you plan to contribute to Qt, you should specify your codereview username so that the git remotes are properly set up.

Code: Select all

perl init-repository
2.)Then alter the mkspec to match Odroid U3 Settings

If we were doing a cross-compile we would want to create a mkspec under (Qt5 Git Src Top)/qtbase/mkspec/devices. Here you can see how complex the one for the odroid Xu3 is.
Because we plan to build on the Odroid U3 it become quite simple.
- First Alter /qtbase/mkspec/linux-g++/qmake.conf to look like mine:

Code: Select all

#
# qmake configuration for linux-g++
#

MAKEFILE_GENERATOR      = UNIX
CONFIG                 += incremental
QMAKE_INCREMENTAL_STYLE = sublib

include(../common/linux.conf)
include(../common/gcc-base-unix.conf)
include(../common/g++-unix.conf)
include(../common/linux_device_pre.conf)
EGLFS_PLATFORM_HOOKS_SOURCES = $PWD/qeglfshooks_odroidu2.cpp

# Extra stuff (OpenGL, DirectFB, ...)
QMAKE_INCDIR_EGL        += $[QT_SYSROOT]/usr/include
QMAKE_LIBDIR_EGL        += $[QT_SYSROOT]/usr/lib/arm-linux-gnueabihf/mali-egl
QMAKE_INCDIR_OPENGL_ES2 += $QMAKE_INCDIR_EGL
QMAKE_LIBDIR_OPENGL_ES2 += $QMAKE_LIBDIR_EGL
QMAKE_INCDIR_OPENVG     += $QMAKE_INCDIR_EGL
QMAKE_LIBDIR_OPENVG     += $QMAKE_LIBDIR_EGL

QMAKE_LIBS_EGL  += -lMali
QMAKE_LIBS_OPENGL_ES2   += $QMAKE_LIBS_EGL
QMAKE_LIBS_OPENVG       += $QMAKE_LIBS_EGL



QMAKE_CFLAGS   +=  -march=armv7-a -mcpu=cortex-a9  -mtune=cortex-a9 -mfpu=neon -mvectorize-with-neon-quad
QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
QMAKE_CFLAGS_RELEASE   +=  -march=armv7-a -mcpu=cortex-a9  -mfpu=neon  -mfloat-abi=hard
DISTRO_OPTS += "hard-float"
QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CXXFLAGS -O3

##QT_INSTALL_PREFIX="/usr/local/Qt5.5.1"  ## Edit this if you have a preference

include(../common/linux_arm_device_post.conf)
# Preferred eglfs backend
EGLFS_DEVICE_INTEGRATION = eglfs_x11

load(qt_config)

mkspec for Odroid-Xu4 (Work in Progress)

Code: Select all

#
# qmake configuration for linux-g++
#

MAKEFILE_GENERATOR      = UNIX
CONFIG                 += incremental
QMAKE_INCREMENTAL_STYLE = sublib

include(../common/linux.conf)
include(../common/gcc-base-unix.conf)
include(../common/g++-unix.conf)

#QMAKE_INCDIR += /usr/include
#QMAKE_LIBDIR += /usr/lib

#QMAKE_INCDIR_OPENGL = /usr/include/GL
#QMAKE_LIBDIR_OPENGL = /usr/lib/arm-linux-gnueabihf/mesa
QMAKE_INCDIR_EGL        = /usr/include/EGL
QMAKE_LIBDIR_EGL        = /usr/lib/arm-linux-gnueabihf
QMAKE_INCDIR_OPENGL_ES2 = /usr/include/GLES2
QMAKE_LIBDIR_OPENGL_ES2 = /usr/lib/arm-linux-gnueabihf/
#QMAKE_INCDIR_OPENVG    = $QMAKE_INCDIR_EGL
#QMAKE_LIBDIR_OPENVG    = /usr/lib/arm-linux-gnueabihf/mali-egl

QMAKE_LIBS_EGL += -lEGL
#QMKAE_LIBS_GL  += -lGL
QMAKE_LIBS_OPENGL_ES2 += -lGLESv2 -lEGL

#QMAKE_LFLAGS += -Wl,-rpath-link,/usr/lib/arm-linux-gnueabihf

QMAKE_CFLAGS   +=  -mcpu=cortex-a15 -mfpu=neon-vfpv4 -mtune=cortex-a15.cortex-a7  -mfloat-abi=hard
QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
QMAKE_CFLAGS_RELEASE   +=  -mcpu=cortex-a15 -mfpu=neon-vfpv4 -mtune=cortex-a15.cortex-a7 -mfloat-abi=hard
DISTRO_OPTS += "hard-float"
QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CXXFLAGS -O2

QT_INSTALL_PREFIX="/media/odroid/Transcend/build/qt5/qt5/"  ## Edit this if you have a preference

# Preferred eglfs backend
EGLFS_DEVICE_INTEGRATION = eglfs_linuxfb
load(qt_config)

mkspec for Odroid-C1 (work in progress)

Code: Select all

#
# qmake configuration for linux-g++
#

MAKEFILE_GENERATOR      = UNIX
CONFIG                 += incremental
QMAKE_INCREMENTAL_STYLE = sublib

include(../common/linux.conf)
include(../common/gcc-base-unix.conf)
include(../common/g++-unix.conf)
EGLFS_PLATFORM_HOOKS_SOURCES = /home/odroid/Documents/qt5/qtbase/src/platformsupport/eglconvenience/qeglfshooks_odroidc1.cpp

# Extra stuff (OpenGL, DirectFB, ...)
QMAKE_INCDIR_EGL        = /usr/include/EGL
QMAKE_LIBDIR_EGL        = /usr/lib/arm-linux-gnueabihf/mali-egl
QMAKE_INCDIR_OPENGL_ES2 = /usr/include/GLES2
QMAKE_LIBDIR_OPENGL_ES2 = /usr/lib/arm-linux-gnueabihf/mali-egl
QMAKE_INCDIR_OPENGL    = /usr/include/GL
QMAKE_LIBDIR_OPENGL   = /usr/lib/arm-linux-gnueabihf/mesa

QMAKE_LIBS_EGL += -lMali
QMAKE_LIBS_OPENGL_ES2 += -lMali
QMAKE_LIBS_OPENGL    +=  -lGL  -lMali
QMAKE_LIBS_X11 += -lX11

QMAKE_LFLAGS += -Wl,-rpath-link,/usr/lib/arm-linux-gnueabihf/

QMAKE_CFLAGS   +=  -march=armv7-a -mcpu=cortex-a5  -mtune=cortex-a5 -mfpu=neon-fp16 -mvectorize-with-neon-quad -mfloat-abi=hard
QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
QMAKE_CFLAGS_RELEASE   +=  -march=armv7-a -mcpu=cortex-a5  -mtune=cortex-a5 -mfpu=neon-fp16 -mvectorize-with-neon-quad -mfloat-abi=hard
DISTRO_OPTS += "hard-float"
QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CXXFLAGS -O2

QT_INSTALL_PREFIX="/usr/local/Qt-5.6.0"  ## Edit this if you have a preference


EGLFS_DEVICE_INTEGRATION = eglfs_x11

load(qt_config)
These changes simply say "use most of the default stuff for a linux-g++ environment. BUT make sure that GCC knows this IS armv7-a, the chipset IS A9 based, fpu IS neon based, and IS hard float.

eglfs_mali is important to get the eglfs platform plug going. As with many other things, this needs more testing. However, x11session does close out and an eglfs session begins on my attempts (not true when I have compiled in the past). Be ready to restart the device from UART or SSH in case something goes wrong. As of right now I don't know a way to switch back to the xsession.

3.) Correctly configure Qt5

This part can be difficult but I found the configure below works well for me (I wanted to use System versions of everything, but this was a problem for PCRE in particular).
from the root of the Qt source directory.

You might want Qt5 installed somewhere in particular
if that is the case add to the configure line below

Code: Select all

-prefix "where/you/want/to/install" 

I had issues with webengine (can't be built on ARM with lgpl) so I recommend adding -skip qtwebengine

Code: Select all

./configure -release -confirm-license -opensource -platform linux-g++  -opengl es2 -no-pch -qt-pcre -cups -system-xcb -system-sqlite -nomake tests -nomake examples -no-kms -skip qtwebengine -gstreamer 1.0 -no-gtkstyle -no-warnings-are-errors > configure-out.txt

If all looks good in your configure Log,

Code: Select all

Build type:    linux-g++ (arm, CPU features: neon)

Build options:
  Configuration .......... accessibility accessibility-atspi-bridge alsa audio-backend c++11 clock-gettime clock-monotonic compile_examples concurrent cups dbus directfb egl eglfs eglfs_mali egl_x11 enable_new_dtags evdev eventfd fontconfig full-config getaddrinfo getifaddrs glib gstreamer-1.0 gtk2 gtkstyle harfbuzz iconv icu inotify ipv6ifname large-config largefile libudev linuxfb medium-config minimal-config mremap neon nis opengl opengles2 openssl openvg pcre png posix_fallocate pulseaudio qpa qpa reduce_exports release rpath shared small-config system-freetype system-jpeg system-png system-sqlite system-zlib tslib use_gold_linker xcb xcb-glx xcb-plugin xcb-render xcb-sm xcb-xlib xinput2 xkbcommon-evdev xlib xrender 
  Build parts ............ libs tools
  Mode ................... release
  Using sanitizer(s)...... none
  Using C++11 ............ yes
  Using gold linker....... yes
  Using new DTAGS ........ yes
  Using PCH .............. no
  Target compiler supports:
    Neon ................. yes

Qt modules and options:
  Qt D-Bus ............... yes (loading dbus-1 at runtime)
  Qt Concurrent .......... yes
  Qt GUI ................. yes
  Qt Widgets ............. yes
  Large File ............. yes
  QML debugging .......... yes
  Use system proxies ..... no

Support enabled for:
  Accessibility .......... yes
  ALSA ................... yes
  CUPS ................... yes
  Evdev .................. yes
  FontConfig ............. yes
  FreeType ............... yes (system library)
  Glib ................... yes
  GStreamer .............. yes (1.0)
  GTK theme .............. yes
  HarfBuzz ............... yes (bundled copy)
  Iconv .................. yes
  ICU .................... yes
  Image formats: 
    GIF .................. yes (plugin, using bundled copy)
    JPEG ................. yes (plugin, using system library)
    PNG .................. yes (in QtGui, using system library)
  journald ............... no
  libinput................ no
  mtdev .................. no
  Networking: 
    getaddrinfo .......... yes
    getifaddrs ........... yes
    IPv6 ifname .......... yes
    libproxy.............. no
    OpenSSL .............. yes (loading libraries at run-time)
  NIS .................... yes
  OpenGL / OpenVG: 
    EGL .................. yes
    OpenGL ............... yes (OpenGL ES 2.0+)
    OpenVG ............... yes-auto
  PCRE ................... yes (bundled copy)
  pkg-config ............. yes 
  PulseAudio ............. yes
  QPA backends: 
    DirectFB ............. yes
    EGLFS ................ yes
      EGLFS i.MX6....... . no
      EGLFS KMS .......... no
      EGLFS Mali ......... yes
      EGLFS Raspberry Pi . no
      EGLFS X11 .......... yes
    LinuxFB .............. yes
    XCB .................. yes (system library)
      EGL on X ........... yes
      GLX ................ yes
      MIT-SHM ............ yes
      Xcb-Xlib ........... yes
      Xcursor ............ yes (loaded at runtime)
      Xfixes ............. yes (loaded at runtime)
      Xi ................. no
      Xi2 ................ yes
      Xinerama ........... yes (loaded at runtime)
      Xrandr ............. yes (loaded at runtime)
      Xrender ............ yes
      XKB ................ yes
      XShape ............. yes
      XSync .............. yes
      XVideo ............. yes
  Session management ..... yes
  SQL drivers: 
    DB2 .................. no
    InterBase ............ no
    MySQL ................ yes (plugin)
    OCI .................. no
    ODBC ................. yes (plugin)
    PostgreSQL ........... yes (plugin)
    SQLite 2 ............. no
    SQLite ............... yes (plugin, using system library)
    TDS .................. yes (plugin)
  tslib .................. yes
  udev ................... yes
  xkbcommon-x11........... yes (system library)
  xkbcommon-evdev......... yes
  zlib ................... yes (system library)
if all looks good remember to enable swapfile if it is not.
then compile.

Code: Select all

make -j4
Odroid C1 configure options

Code: Select all

configure -release -confirm-license -opensource -platform linux-g++ -opengl es2 -no-pch -qt-pcre -cups -system-xcb -system-sqlite -nomake tests -nomake examples -no-kms -skip qtwebengine -no-gtkstyle -no-warnings-are-errors

QtCreator 3.5 Build Instructions

Pull down from source like

Code: Select all

git clone --recursive https://code.qt.io/qt-creator/qt-creator.git
OK Now for the ONE issue I know of - Botan.

install this git patch -
https://github.com/meta-qt5/meta-qt5/bl ... -aar.patch

Then run that freshly made qmake (you should have installed it earlier after building Qt5).

Code: Select all

mkdir qt-creator-build
cd qt-creator-build
qmake -r ../qt-creator/qtcreator.pro
Then assuming that went all good -

Code: Select all

make -j4
Then play with it after it is done. If it works install it and enjoy!

Please someone "Guinea Pig" for me and let me know if you have any issues.
Last edited by Tpimp on Fri Feb 19, 2016 6:53 pm, edited 20 times in total.

User avatar
memeka
Posts: 4230
Joined: Mon May 20, 2013 10:22 am
languages_spoken: english
ODROIDs: XU rev2 + eMMC + UART
U3 + eMMC + IO Shield + UART
Contact:

Re: Complete Qt5.5.1 w/ QtCreator 3.5.8.1 Image

Unread post by memeka » Thu Jul 16, 2015 9:40 am

steps? thanks!

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 18th 2015] Qt Developer's Dream Image

Unread post by Tpimp » Sun Jul 19, 2015 5:25 pm

I am planning to just leave the current lubuntu DE and attempt to finish cleaning the image for release. I am considering Hawaii Desktop shell now for final build. Also sad news.... but attempts to get cool retro term going failed http://ubuntuportal.com/2014/10/cool-re ... style.html. The shaders are written in opengl, I am considering converting them to gles2 myself or maybe melding this and yakuake for a new terminal.

User avatar
meveric
Posts: 9761
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go
Contact:

Re: [UPDATE July 18th 2015] Qt Developer's Dream Image

Unread post by meveric » Sun Jul 19, 2015 7:16 pm

I have cool retro term running just fine on the ODROID... http://forum.odroid.com/viewtopic.php?f=52&t=9380
use it for months now and it's working perfectly fine :)
In fact i just rebuild it yesterday for my Debian Jessie image.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 18th 2015] Qt Developer's Dream Image

Unread post by Tpimp » Mon Jul 20, 2015 2:18 am

I have been on here a while and never found that post. Thanks for the share! In that case I will probably need to rebuild the libQt5Opengl and libQt5openglExtensions. While running the built from source version of cool-retro-term I'm having issues with the shaders used to style it. I'll give the one from your repo a try and see how it works on this image.

This is what I am getting

Code: Select all

QOpenGLShader::compile(Vertex): 1:23: L0002: Function 'texture2D' not supported on target
Have you ran into this while building (and running) it? To be clear this is a runtime warning/error. It builds and starts fine but is "all pink". So the texture is missing. Rebuilding the libraries I'll post with an update.

When I do get it to build correctly I also plan to branch it and add borderless-window support so all you see is the terminal screen. :) it will be even sexier!

blackmamba
Posts: 13
Joined: Mon Jun 29, 2015 10:21 pm
languages_spoken: english
ODROIDs: XU3 Lite
Contact:

Re: [UPDATE July 18th 2015] Qt Developer's Dream Image

Unread post by blackmamba » Mon Jul 20, 2015 4:19 am

Which version of GCC/G++ is used here?

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 18th 2015] Qt Developer's Dream Image

Unread post by Tpimp » Mon Jul 20, 2015 4:50 am

Im using Gcc 4.8.4.

EDIT: GCC 5.1 NOW!
Last edited by Tpimp on Fri Jul 24, 2015 1:04 pm, edited 1 time in total.

User avatar
meveric
Posts: 9761
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go
Contact:

Re: [UPDATE July 18th 2015] Qt Developer's Dream Image

Unread post by meveric » Mon Jul 20, 2015 5:29 am

Tpimp wrote:I have been on here a while and never found that post. Thanks for the share! In that case I will probably need to rebuild the libQt5Opengl and libQt5openglExtensions. While running the built from source version of cool-retro-term I'm having issues with the shaders used to style it. I'll give the one from your repo a try and see how it works on this image.

This is what I am getting

Code: Select all

QOpenGLShader::compile(Vertex): 1:23: L0002: Function 'texture2D' not supported on target
Have you ran into this while building (and running) it? To be clear this is a runtime warning/error. It builds and starts fine but is "all pink". So the texture is missing. Rebuilding the libraries I'll post with an update.

When I do get it to build correctly I also plan to branch it and add borderless-window support so all you see is the terminal screen. :) it will be even sexier!
I have the same shader error message if i try to run cool-retro-term in the most current version on Debian Jessie, but i don't have any graphical issues (besides 4 small black and white squares in the middle of the terminal).
My older version from Feb. 2015 running on Debian Wheezy does not have any issues at all and works perfectly fine without this error message.
Both versions run with all effects no pink :)
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 18th 2015] Qt Developer's Dream Image

Unread post by Tpimp » Mon Jul 20, 2015 8:47 am

meveric wrote:
Tpimp wrote:I have been on here a while and never found that post. Thanks for the share! In that case I will probably need to rebuild the libQt5Opengl and libQt5openglExtensions. While running the built from source version of cool-retro-term I'm having issues with the shaders used to style it. I'll give the one from your repo a try and see how it works on this image.

This is what I am getting

Code: Select all

QOpenGLShader::compile(Vertex): 1:23: L0002: Function 'texture2D' not supported on target
Have you ran into this while building (and running) it? To be clear this is a runtime warning/error. It builds and starts fine but is "all pink". So the texture is missing. Rebuilding the libraries I'll post with an update.

When I do get it to build correctly I also plan to branch it and add borderless-window support so all you see is the terminal screen. :) it will be even sexier!
I have the same shader error message if i try to run cool-retro-term in the most current version on Debian Jessie, but i don't have any graphical issues (besides 4 small black and white squares in the middle of the terminal).
My older version from Feb. 2015 running on Debian Wheezy does not have any issues at all and works perfectly fine without this error message.
Both versions run with all effects no pink :)

Thank you this is helpful. I am working on different setting and a more explicit path on GLES2 includes. I see in the headers texture2D is there but the prototype is different than the one used in the cool-retro-term shader. I am not super familiar with shaders on either system. Anyone have any ideas? I will look at the shader references more when I get back to building it.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 18th 2015] Qt Developer's Dream Image

Unread post by Tpimp » Mon Jul 20, 2015 8:27 pm

meveric wrote:
Tpimp wrote:I have been on here a while and never found that post. Thanks for the share! In that case I will probably need to rebuild the libQt5Opengl and libQt5openglExtensions. While running the built from source version of cool-retro-term I'm having issues with the shaders used to style it. I'll give the one from your repo a try and see how it works on this image.

This is what I am getting

Code: Select all

QOpenGLShader::compile(Vertex): 1:23: L0002: Function 'texture2D' not supported on target
Have you ran into this while building (and running) it? To be clear this is a runtime warning/error. It builds and starts fine but is "all pink". So the texture is missing. Rebuilding the libraries I'll post with an update.

When I do get it to build correctly I also plan to branch it and add borderless-window support so all you see is the terminal screen. :) it will be even sexier!
I have the same shader error message if i try to run cool-retro-term in the most current version on Debian Jessie, but i don't have any graphical issues (besides 4 small black and white squares in the middle of the terminal).
My older version from Feb. 2015 running on Debian Wheezy does not have any issues at all and works perfectly fine without this error message.
Both versions run with all effects no pink :)
After completely rebuilding Qt5 (and blowing up my last build)... I have update the build instructions, they should work fine now. Mine built with no issues.

As for cool-retro-term
The pink issues came from enabling the wrong "combination" of shaders. I believe what is happening is the shader language can only handle a set amount of variables (dependent on the HW) and when you enable all and play with them enough you eventually overflow the variable registers. It works really well with the few I like on. Adding it to the package list and in time will remove the outer window and add missing features. Aiming to make it almost as good as yakuake.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 20th 2015] Qt Developer's Dream Image

Unread post by Tpimp » Tue Jul 21, 2015 1:59 pm

Everything is starting to shape up. I have been using checkinstall to build packages.

I now have debian packages built for Qt5.5.1, QtCreator 3.5.81, and of course retro-cool-term. They should replace existing libraries so if you attempt to install them they will replace existing system packages. Need to get something setup to share my files with everyone next.

Also currently working on getting EGLS working for Qt5 on odroid U3. I know i am close! When I start cool-retro-term -platform eglfs, it is properly loaded and I am sitting at a black screen. However, the application is running and receiving input. If I type

Code: Select all

sudo shutdown -r now
the odroid reboots as expected (so retro-term is getting mouse and keyboard input). I saw a few links but if you know directly how to make this work, please post.

Aiming for a release of the image in next two days. If not it will be next week as I'll be away a few days this weekend.

User avatar
memeka
Posts: 4230
Joined: Mon May 20, 2013 10:22 am
languages_spoken: english
ODROIDs: XU rev2 + eMMC + UART
U3 + eMMC + IO Shield + UART
Contact:

Re: [UPDATE July 20th 2015] Qt Developer's Dream Image

Unread post by memeka » Tue Jul 21, 2015 2:22 pm

check the position of the image. i remember something on c1 + qt5, because of a vsync translation bug i think, egl stuff was rendered in the off-screen buffer (starting from -y, 0 instead of 0,0)
i think there is a patch on the forums here...

User avatar
meveric
Posts: 9761
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go
Contact:

Re: [UPDATE July 20th 2015] Qt Developer's Dream Image

Unread post by meveric » Tue Jul 21, 2015 2:34 pm

Issn't eglfs for fbdev? If so, make sure you actually have the fbdev drivers installed and not X11 drivers. They are different drivers...
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

User avatar
memeka
Posts: 4230
Joined: Mon May 20, 2013 10:22 am
languages_spoken: english
ODROIDs: XU rev2 + eMMC + UART
U3 + eMMC + IO Shield + UART
Contact:

Re: [UPDATE July 20th 2015] Qt Developer's Dream Image

Unread post by memeka » Tue Jul 21, 2015 4:10 pm

no, eglfs is different.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 20th 2015] Qt Developer's Dream Image

Unread post by Tpimp » Wed Jul 22, 2015 12:26 am

Thanks guys.

Memeka, Yes I found the C1+ Qt5 and attempted some of the fixes there. I eventually looked up EGL struct we were filling and I believe I "hardcoded" everything correctly for my monitor (I'll find a better solution soon). It no longer shows a dash (like a prompt) but instead a black screen which must be the frame buffer. I think there is an eglSwapBuffers needed somewhere but not sure where to put it yet.

Meveric - Yes and no. It uses a frame buffer so kinda similar but FBDev is a library with its own accelerated hw (sometimes). EGLFS is more just and EGL window (full screen so no window manager involved) and in my case filled with gorgeous Qt5 and GLSL shaders - eventually :D http://doc.qt.io/qt-5/embedded-linux.html <- good info on the differences.

I don't think EGLFS is a deal breaker for many interested in the image so I will go on and plan to fix that for when it is needed. Eventually I want to write a nice Desktop Environment for odroid similar to MiniMenu on the pandora. http://pandorawiki.org/Minimenu (thanks for clearing this up for me Meveric) but I want it to run on EGLFS because inside my Qt5 applications there is not tearing. I don't know if this is vsync (because I don't think we have that working on U3) or just the way Qt does their drawing but I hope to have a tear free desktop before Mali/samsung fixes X11.


In the meantime considering adding GCC5.0 to the image. Have either of you or anyone tried it on the Odroid yet? Ill update with my experiences. Image release is imminent. (building now)

Update - It failed to build but I found and am testing ubuntu packages from wily werewolf.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 22st 2015] Qt Developer's Dream Image

Unread post by Tpimp » Wed Jul 22, 2015 5:42 pm

Wow so playing around... I just got the image working after upgrading it to Wily Werewolf. I am now running 15.10 with GCC 5.1 and rebuilding Qt5 libs ontop of updated Xorg-Server. It took me almost four hours but I am back and logging in using lightdm with fresh lubuntu :) - You can all thank me for the work when you log in to it for the first time :) I have internet I have usb I have it all as far as I can tell!

Of course except for a working Mali driver. X11 is running, windows seem about as clean if not better. But glxinfo says software rasterization. Did I lose my HW Acceleration? Thinking so but some confirmation would be nice.

User avatar
meveric
Posts: 9761
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go
Contact:

Re: [UPDATE July 22nt 2015] Qt Developer's Dream Image

Unread post by meveric » Wed Jul 22, 2015 9:33 pm

glxinfo is only for OpenGL, but Mali is OpenGL ES try es2_info.
Concerning the image (Ubuntu 15.10) you might need it for your project, but generally it's a bad idea to use it.. Ubuntu 15.10 only has 9 months support, means in July 2016 there will be no updated for the image.
While in fact Ubuntu 16.04 will be once again a LTS release with updates until 2021 :)
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 23rd 2015] Qt Developer's Dream Image

Unread post by Tpimp » Fri Jul 24, 2015 10:53 am

Qt Developers Dream RC-1 Image is about ready for release.

Cleaning things up then starting upload. I don't have many options but will try to provide mirrors. I will update main post with release info.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 23rd 2015] Qt Developer's Dream RC-1

Unread post by Tpimp » Fri Jul 24, 2015 5:25 pm

Drive links for RC-1 are live!

Would be great if someone could post mirrors. Hope everyone enjoys.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 23rd 2015] Qt Developer's Dream RC-1

Unread post by Tpimp » Sun Jul 26, 2015 4:21 pm

8Gb image is uploading to mediafire. I will also replace the other links in time.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 27th 2015] Qt Developer's Dream RC-1

Unread post by Tpimp » Mon Jul 27, 2015 5:16 pm

Work has started on multi-sessions for cool-retro-term.

http://forum.odroid.com/viewtopic.php?f ... 746#p98746

User avatar
rooted
Posts: 6435
Joined: Fri Dec 19, 2014 9:12 am
languages_spoken: english
Location: Gulf of Mexico, US
Contact:

Re: [UPDATE July 27th 2015] Qt Developer's Dream RC-1

Unread post by rooted » Tue Jul 28, 2015 6:35 am

Don't let a lack of responses turn you off, I know there are those that will find this useful.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 27th 2015] Qt Developer's Dream RC-1

Unread post by Tpimp » Tue Jul 28, 2015 8:20 am

Thanks for the encouragement. No worries. All the questions I ask get answered pretty quick. Thank you's are nice but I'm happy to share.

stmicro
Posts: 238
Joined: Tue Apr 28, 2015 4:23 pm
languages_spoken: english, chinese
ODROIDs: Many Odroids and Rpis.
Location: shenzhen china
Contact:

Re: [UPDATE July 27th 2015] Qt Developer's Dream RC-1

Unread post by stmicro » Tue Jul 28, 2015 10:57 am

Great job!
I could not expect this amazing dev environment can run on the tiny embedded board.
I love the retro crt command window too.

serzh
Posts: 5
Joined: Mon Jun 30, 2014 4:17 pm
languages_spoken: english
Location: Russia, Saint-Petersburg
Contact:

Re: [UPDATE July 27th 2015] Qt Developer's Dream RC-1

Unread post by serzh » Wed Jul 29, 2015 12:53 am

Hi, it's great!
Can it work on C1 now or in future?
Thank you!

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 27th 2015] Qt Developer's Dream RC-1

Unread post by Tpimp » Wed Jul 29, 2015 3:57 am

stmicro wrote:Great job!
I could not expect this amazing dev environment can run on the tiny embedded boad.
I love the retro crt command window too.

Thank you I am glad you like it!

serzh wrote:Hi, it's great!
Can it work on C1 now or in future?
Thank you!
Not yet, but my C1's will get here early next month and I will make a similar image for them. Thanks for your interest, an XU image will be in the works as well.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 29th 2015] Qt Developer's Dream RC-1

Unread post by Tpimp » Thu Jul 30, 2015 7:35 pm

UPDATE June 29th

Good News I got LXQt V0.9 fully compiled and launch on the current image.

Bad news Display managers seem to hate it! Not a single one can launch directly into it (probably an issue with starting "startlxqt". In my particular case it whines about a missing QT5.so which is clearly in the same directory as the others. Also because so much trouble is involved with the display manager. The only way to log in: boot to prompt. Log-in. "startx". Then LXQT launches.

For the most part everything works inside. The desktop is smooth with minimal window tearing. Qt5 applications seem to launch faster, and cool-retro-term seems to run at higher frame-rate.

Where I am now: Attempting to make SDDM or (anybody not bloated) launch LXQT. Then begin to tweak the desktop environment a bit to get it running smoothly. Then RC2. Probably late next week or early the following week. Unless someone wants to help with DM and DE integration :)

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE July 29th 2015] Qt Developer's Dream RC-1

Unread post by Tpimp » Fri Jul 31, 2015 4:53 pm

Update June 30th It appears in moving to systemd that SDDM needs to be rebuilt and also it is using Qt5 EGLFS backend (because it runs before X is started). So looks like I will be tackling both issues sooner than later. Getting close though. :geek:

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE August 23rd 2015] Qt Developer's Dream RC-1

Unread post by Tpimp » Mon Aug 24, 2015 5:36 am

RC2 RELEASED. - Getting ready to begin work on XU image.
Fixed a few issues and added Cool-Retro-Term DE. The image should work well for anyone attempting the directions in next months magazine.
Dropbox is uploaded, others links will change when finished but are currently linking to RC1.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE August 23rd 2015] Qt Developer's Dream RC-2

Unread post by Tpimp » Fri Sep 04, 2015 5:50 pm

Note to self: Add Otter-Browser for final release.

User avatar
meveric
Posts: 9761
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go
Contact:

Re: [UPDATE August 23rd 2015] Qt Developer's Dream RC-2

Unread post by meveric » Fri Sep 04, 2015 6:30 pm

you can take otter browser from my repository.. I'm constantly updating to the newest version (normaly every week) :)
Still have to test the current BETA 7 release.. Already built it, but haven't tested it yet :D
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE August 23rd 2015] Qt Developer's Dream RC-2

Unread post by Tpimp » Mon Sep 07, 2015 7:49 am

Update September 6th

I have began work on the Xu and C1 images. :( So many problems -> But here is an update on my progress:

Image Bases -
U2/3 : Based off HK Ubuntu 14.04.02 LTS - from RC1 and RC2 but updates have been applied as they come.
Xu3/4 : Based off current HK 15.04 Mate Desktop. (might try 14.04 LTS)
C1 : Based off current HK 14.04.03 LTS

Qt version:
All versions are moving to Qt5.6 - at the moment I have U3 building just fine. (update to come)

Make specs:
I have improved the GCC/G++ flags to better reflect the systems (neon, arm flags -will be taken advantage of when available).

All systems have a working GCC-5/G++-5
All systems have working Qt5 CORE, Qt5 GUI, QT5 Network, Qt5 Webkit

The main issues encountered have been with the ODROID C1 and XU4 Mali development configurations. The headers for KHR (khronous platform headers) and mali-dev (EGL.h/GLESv2.h/etc..) are missing (or out of date?) from both images. Manually grabbing these from Mali developer portal/Odroid Git solves that problem. From there, conflicts with MESA (which are pretty normal). Once the conflicts are cleared it is possible to compile but I have not got a WORKING EGL configuration for either device. I am currently attempting to just get MALI_x11/ EGL on X working. From there it would be nice to get EGLFS_x11 working to provide the same features as the U3 image. I have not investigated efforts to get EGL with linuxFB, or MALI_FBDEV to work. Without working EGL/Opengl es2 - NO QtQuick2 :(

Anyone that can help please let me know what you have done to get these working.

Currently the odroid XU is giving the

Code: Select all

... No configuration found for EGL Display Type 10
- or whatever. This is after I have manually altered the eglconvenience, xcbeglintegration, etc. I think I am close but not there yet.

Link to OdroidXu4 Qt5.5 Deb -might work might not, if it does and you use it you are agreeing to the Qt opensource license agreement. If it doesnt work - I tried image is coming.

And the C1 is a little behind (where the Xu was a bit before egl/xcb alterations) with the invalid buffer sizes reported by EGL.

I think the root of the cause is improper configuration of EGL and MALI headers/libs. - but I am far from an expert in linux dependencies and can only defer this issue until I have more time to look at it.
From a technology standpoint I don't care if I get FBDEV working or X11. I just want to generate a fast/clean/stable development environment for Qt5 on each odroid platform. Which for the C1 might be FBDEV.

Without help, I will likely release the XU and C1 images without support for QtQuick :shock: -> but I can't spend anymore time compiling I have code to write and I mostly needed a working QNetwork for the Xu4. Expect RC-1 images by the end of the week.

P.S. - Tested the Otter-Browser on the U3 - I don't see a significant improvement over Chromium. Here is an image of sunspider test of webkit for you to decide. I will still likely include it. (From - Chromium, To- Otter-Browser GIT Sep. 6th)
Otter-browser does play Youtube videos native. But like crap currently (with my build and configurations).
Image

User avatar
meveric
Posts: 9761
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go
Contact:

Re: [UPDATE September 6th Qt5.6] Qt Developer's Dream RC-2

Unread post by meveric » Mon Sep 07, 2015 3:30 pm

Otter-Browser is good when browsing WebPages... The ODROID Forum on Otter-Browser is as fast as it can get and should even be faster than Chromium.
But when it comes to multimedia, Otter-Browser issn't there yet. Still they have a nice development curve and bring out new versions every week, which is nice and allows you to follow their progress.
They currently released their BETA 7 version of the Browser. Let's see where it's going. It still misses a lot of features.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE September 6th Qt5.6] Qt Developer's Dream RC-2

Unread post by Tpimp » Tue Sep 08, 2015 10:47 am

Image

Success for Odroid Xu4! :D A little preview for everyone. Looks like the issue is EGL reporting an incorrect alpha size of 0. For now it is running better than the U3. Look for a release of RC-1 early next week.

mycnc
Posts: 21
Joined: Tue Sep 08, 2015 2:22 am
languages_spoken: english
ODROIDs: XU4, C2
Location: Canada
Contact:

Re: [UPDATE September 6th Qt5.6] Qt Developer's Dream RC-2

Unread post by mycnc » Wed Sep 09, 2015 4:19 am

great job, thank you very much.
My project is running on XU4 with GL widget turned off. Really waiting RC1 to try a complete application.
myCNC- CNC controls http://www.pv-automation.com

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE September 6th Qt5.6] Qt Developer's Dream RC-2

Unread post by Tpimp » Wed Sep 09, 2015 8:19 am

Sneak peek at C1:
Image

GCC 5.2, GStreamer 1.0, Webkit and whatnot :)

mycnc
Posts: 21
Joined: Tue Sep 08, 2015 2:22 am
languages_spoken: english
ODROIDs: XU4, C2
Location: Canada
Contact:

Re: [UPDATE September 6th Qt5.6] Qt Developer's Dream RC-2

Unread post by mycnc » Tue Sep 15, 2015 11:51 am

Hi, do you have any news for XU4 ?
myCNC- CNC controls http://www.pv-automation.com

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE September 6th Qt5.6] Qt Developer's Dream RC-2

Unread post by Tpimp » Sat Sep 19, 2015 7:33 am

Yes. But not good :D
When going to copy the image from my eMMC it somehow got corrupted. Probably because I was uber sick when I tried.

Long story short moving the XU4 image to 14.04 LTS so each board is on the same level OS. I have begun the new image but I'm still a bit sick. Your interest bumps my motivation and I hope to get it out ASAP.

mycnc
Posts: 21
Joined: Tue Sep 08, 2015 2:22 am
languages_spoken: english
ODROIDs: XU4, C2
Location: Canada
Contact:

Re: [UPDATE September 6th Qt5.6] Qt Developer's Dream RC-2

Unread post by mycnc » Sun Sep 20, 2015 5:32 am

I have cross-compiled Q5.5 (with XU3 mkspec). Qt configure options looks promising. I'm running my application on XU4,
2D works well, but 3D doesn't start with some error messages about exynos driver absent/error. You mentioned this.

I'm waiting your image to try. Hope it will be solution.

However if you have some short how-to about exynos drivers installation, I'd like to try it as well.

I found just cross-gcc 4.9. Is it necessary to update to GCC 5.1 ?
myCNC- CNC controls http://www.pv-automation.com

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE September 6th Qt5.6] Qt Developer's Dream RC-2

Unread post by Tpimp » Sun Sep 20, 2015 6:28 am

Make sure you understand the directions listed in my directions are for native compile on the device. I do not cross-compile Qt so I cannot help too much. But the issue might have to do with the configuration process and where your sysroot is pointing.

mycnc
Posts: 21
Joined: Tue Sep 08, 2015 2:22 am
languages_spoken: english
ODROIDs: XU4, C2
Location: Canada
Contact:

Re: [UPDATE September 6th Qt5.6] Qt Developer's Dream RC-2

Unread post by mycnc » Sun Sep 20, 2015 7:10 am

Yes, I see you use native compilation.
I suppose my problems are -
1) some packages are not installed on the system.
2) exynos drivers absent or broken
3) I use XU3 mkspec, which is in original Qt5.5 installation. Probably it's not optimal for XU4.

I hope all this problems might be resolved if I use your image file.
Odroid image file is used as rootfs, so cross-compilation is very similar to native. Except GCC version 4.9 (not 5.1/5.2) ... and compilation time :)
myCNC- CNC controls http://www.pv-automation.com

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE September 6th Qt5.6] Qt Developer's Dream RC-2

Unread post by Tpimp » Sun Sep 20, 2015 4:31 pm

My point was that the Xu3 makespec as far as I know is for cross-compilation. Therefore it needs to be altered or ideally a proper makespec is generated for your system configuration. Even the makespecs I use might not work as the paths need to be set on each system. In terms of missing packages or libraries you must use apt-get to get most of it. Drivers I would install the firmware provided by HK either through odroid-utility or github and install manually. If I understand yiu, your best bet is to alter the makespec I provide in my build instructions for the XU4. I'm away from my board atm. But I will have an image up hopefully wednesday.

User avatar
Cartridge
Posts: 608
Joined: Fri Sep 27, 2013 9:06 pm
languages_spoken: english, french natively
ODROIDs: The Perfect ODROID-U2, ODROID-U3+, C1, XU3
Contact:

Re: [UPDATE September 6th Qt5.6] Qt Developer's Dream RC-2

Unread post by Cartridge » Sat Oct 24, 2015 4:46 am

@TPimp, I recently lost my data making a quick change to my computer. Forgot to copy my files before moving on. You wouldn't happen to have a deb package of qt 5.6 built with eglconfig working correctly for U3? All I can see on this thread is the Xu deb package you provided a while ago.

--EDIT--
Scratch that, Does your image contain that fix? It seems to be a lot of fun to compile with your image.
Image
http://cartridgeports.cf/
ODROID's DO what WinDON'T "That's Blast Processing!"

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE September 6th Qt5.6] Qt Developer's Dream RC-2

Unread post by Tpimp » Thu Nov 26, 2015 11:08 am

Cartridge wrote:@TPimp, I recently lost my data making a quick change to my computer. Forgot to copy my files before moving on. You wouldn't happen to have a deb package of qt 5.6 built with eglconfig working correctly for U3? All I can see on this thread is the Xu deb package you provided a while ago.

--EDIT--
Scratch that, Does your image contain that fix? It seems to be a lot of fun to compile with your image.
Its been a long time coming but the Odroid-C1 image is getting close. I also plan to release Xu4 but after I get the C1 image finished. - I also hope to detail how to compile Qt5 on all boards (steps I use) on the wiki. 5.6 is in Alpha so there may be issues with the builds. - but im trying anyway :D

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE September 6th Qt5.6] Qt Developer's Dream RC-2

Unread post by Tpimp » Tue Dec 01, 2015 11:43 am

C1 Image is finished. Shrinking it and uploading now.

The image is based of latest HK official ubuntu lts 14.03 image (3.10.80-135).
I simply cloned Qt5.6, gathered build dependencies, performed hacks and patches built through compile issues until it all worked. I then installed Qt5 to /usr/local/Qt-5.6.0. Set Qt5.6.0 as default Qt in qtchooser. Then compiled QtCreator from source and installed it. Some testing, added shortcuts, then cleaned it up. About 5 days worth of work and rebuilt Qt 8 times :x - hope everyone enjoys.
GCC 5.2.1
Qt5.6 (Alpha) with all modules (Webkit + Script + Tools)
QtCreator3.5.1
patched EGLFS on x11/Mali


Everything runs pretty smooth and compiled with support for C++1z (latest). Qt5Opengl is compiled using mesa which is configured to use gles2. So Qt3d works but has some graphics issues. QML runs very smooth and very fast. Everything needs more testing - so time to release.

Here is the configuration output:

Code: Select all

+ cd qtbase
+ /home/odroid/Documents/qt5/qtbase/configure -top-level -release -confirm-license -opensource -platform linux-g++ -opengl es2 -no-pch -qt-pcre -cups -system-xcb -system-sqlite -nomake tests -nomake examples -no-kms -skip qtwebengine -no-gtkstyle -no-warnings-are-errors

This is the Qt Open Source Edition.

You are licensed to use this software under the terms of
the Lesser GNU General Public License (LGPL) versions 2.1.
You are also licensed to use this software under the terms of
the GNU Lesser General Public License (LGPL) versions 3.

You have already accepted the terms of the Open Source license.

Running configuration tests (phase 1)...
Done running configuration tests.
<srcbase> = /home/odroid/Documents/qt5/qtbase 
<outbase> = /home/odroid/Documents/qt5/qtbase 
Creating qmake...
Done.
Running configuration tests (phase 2)...
Done running configuration tests.

   Configure summary

Build type:    linux-g++ (arm, CPU features: neon)

Build options:
  Configuration .......... accessibility accessibility-atspi-bridge alsa audio-backend c++11 c++14 c++1z clock-gettime clock-monotonic compile_examples concurrent cups dbus dbus-linked egl eglfs eglfs_mali egl_x11 enable_new_dtags evdev eventfd fontconfig full-config gbm getaddrinfo getifaddrs glib gstreamer-0.10 harfbuzz iconv icu inotify ipv6ifname large-config largefile libudev linuxfb medium-config minimal-config mremap neon nis opengl opengles2 openssl pcre png posix_fallocate pulseaudio qpa qpa reduce_exports release rpath shared small-config system-freetype system-jpeg system-png system-sqlite system-zlib threadsafe-cloexec use_gold_linker xcb xcb-glx xcb-plugin xcb-render xcb-sm xcb-xlib xinput2 xkbcommon-evdev xlib xrender 
  Build parts ............ libs tools
  Mode ................... release
  Using sanitizer(s)...... none
  Using C++ standard ..... c++1z
  Using gold linker....... yes
  Using new DTAGS ........ yes
  Using PCH .............. no
  Using LTCG ............. no
  Target compiler supports:
    Neon ................. yes

Qt modules and options:
  Qt D-Bus ............... yes (linked to dbus-1)
  Qt Concurrent .......... yes
  Qt GUI ................. yes
  Qt Widgets ............. yes
  Large File ............. yes
  QML debugging .......... yes
  Use system proxies ..... no

Support enabled for:
  Accessibility .......... yes
  ALSA ................... yes
  CUPS ................... yes
  Evdev .................. yes
  FontConfig ............. yes
  FreeType ............... yes (system library)
  Glib ................... yes
  GStreamer .............. yes (0.10)
  GTK theme .............. no
  HarfBuzz ............... yes (bundled copy)
  Iconv .................. yes
  ICU .................... yes
  Image formats: 
    GIF .................. yes (plugin, using bundled copy)
    JPEG ................. yes (plugin, using system library)
    PNG .................. yes (in QtGui, using system library)
  libinput................ no
  Logging backends: 
    journald ............... no
    syslog   ............... no
  mtdev .................. no
  Networking: 
    getaddrinfo .......... yes
    getifaddrs ........... yes
    IPv6 ifname .......... yes
    libproxy.............. no
    OpenSSL .............. yes (loading libraries at run-time)
  NIS .................... yes
  OpenGL / OpenVG: 
    EGL .................. yes
    OpenGL ............... yes (OpenGL ES 2.0+)
    OpenVG ............... no
  PCRE ................... yes (bundled copy)
  pkg-config ............. yes 
  PulseAudio ............. yes
  QPA backends: 
    DirectFB ............. no
    EGLFS ................ yes
      EGLFS i.MX6 ........ no
      EGLFS i.MX6 Wayland. no
      EGLFS EGLDevice .... no
      EGLFS GBM .......... no
      EGLFS Mali ......... yes
      EGLFS Raspberry Pi . no
      EGLFS X11 .......... yes
    LinuxFB .............. yes
    Mir client............ no
    XCB .................. yes (system library)
      EGL on X ........... yes
      GLX ................ yes
      MIT-SHM ............ yes
      Xcb-Xlib ........... yes
      Xcursor ............ yes (loaded at runtime)
      Xfixes ............. yes (loaded at runtime)
      Xi ................. no
      Xi2 ................ yes
      Xinerama ........... yes (loaded at runtime)
      Xrandr ............. yes (loaded at runtime)
      Xrender ............ yes
      XKB ................ yes
      XShape ............. yes
      XSync .............. yes
      XVideo ............. yes
  Session management ..... yes
  SQL drivers: 
    DB2 .................. no
    InterBase ............ no
    MySQL ................ yes (plugin)
    OCI .................. no
    ODBC ................. yes (plugin)
    PostgreSQL ........... yes (plugin)
    SQLite 2 ............. no
    SQLite ............... yes (plugin, using system library)
    TDS .................. yes (plugin)
  tslib .................. no
  udev ................... yes
  xkbcommon-x11........... yes (system library)
  xkbcommon-evdev......... yes
  zlib ................... yes (system library)


NOTE: Qt is using double for qreal on this system. This is binary incompatible against Qt 5.1.
Configure with '-qreal float' to create a build that is binary compatible with 5.1.

Qt is now configured for building. Just run 'make'.
Once everything is built, you must run 'make install'.
Qt will be installed into /usr/local/Qt-5.6.0

Prior to reconfiguration, make sure you remove any leftovers from
the previous build.
Last edited by Tpimp on Tue Dec 01, 2015 9:02 pm, edited 1 time in total.

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Odroid C1 RC2 - Uploaded

Unread post by Tpimp » Tue Dec 01, 2015 8:46 pm

C1 image has been uploaded check first post for links.

aqeel
Posts: 1
Joined: Fri Nov 13, 2015 6:57 pm
languages_spoken: english, Urdu and Learning German.
ODROIDs: C1+ and XU4.
Contact:

Re: [UPDATE Dec. 1st] Qt Developer's Dream RC-2 (Qt-5.6)

Unread post by aqeel » Tue Feb 02, 2016 5:51 pm

Any update for XU4 image with qt?

Tpimp
Posts: 355
Joined: Thu Jul 16, 2015 5:57 am
languages_spoken: english
ODROIDs: U3, C1+, XU4
Contact:

Re: [UPDATE Dec. 1st] Qt Developer's Dream RC-2 (Qt-5.6)

Unread post by Tpimp » Tue Feb 02, 2016 8:08 pm

Yeah I tried last weekend but had some issues with Mesa conflicts I hadn't run into before. It may be related to moving to the official 15.10 image + attempting Qt5.6 beta. My end goal is aiming at a release with 5.6 stable but that has been delayed until March 1st.

Does anyone have a suggestion for a base image? I have been tempted to build one from Xeosal's odroidbian image. Then I could package the Qt libraries for him to put on his repo.

Bloodae
Posts: 3
Joined: Fri Feb 05, 2016 2:41 am
languages_spoken: english, french
Contact:

Re: [UPDATE Dec. 1st] Qt Developer's Dream RC-2 (Qt-5.6)

Unread post by Bloodae » Mon Feb 15, 2016 4:59 am

Hi,

I'd be really interested with building QT with teh XU4. Any progress on your part? I know it's not an easy job, we have been working on it for a week on our side and haven't progressed much. I was able to complete the configure part on 15.04, but we really are trying to get it working on 14.04lts

Thank you, keep up the good work!

UPDATE: I updated G++ and Gcc by following this link:https://gist.github.com/beci/2a2091f282042ed20cda. I will see tomorrow morning what is the result.

UPDATE2: We played around alot, and finally made it. No swapfiles, and after "make -j4", we followed with "make install" and qt installed. We got qt creater with the apt-get (does it really make a difference? gonna try your method next).

Post Reply

Return to “Ubuntu”

Who is online

Users browsing this forum: No registered users and 2 guests