Coding Chase - Projects

My 3D Hub

Thank You For Donating:

Ikeeki (linux-sunxi@irc.freenode.net)
Computer Troubleshooters Brasil

Monday 19 January 2015

Cubieboard + Native Qt5

This is an updated guide on how to natively compile Qt5 for the Cubieboard devices - X11 variant

This guide considers that:

- Cubian will be the distro used
- "Cubian X1 is out Oct 08, 2014" < http://cubian.org/2014/10/08/cubian-x1-is-out/
- no changes will be made to the script.bin file
- no changes will be made to the kernel

As a result of this, the included mali library support is for r3p0 only (less performant than r3p2-01rel2 but still pretty good)

1) get the mali libraries working

based on http://linux-sunxi.org/Mali_binary_driver

Note: on this particular setup, I did not have to:
- set device permissions
- install the UMP (neither package or source, it came pre-installed)
- build libdri2 (r3p0 X11 only) < but did have to apt-get install libx11-dev libxext-dev libdrm-dev

sudo apt-get update
sudo apt-get install git build-essential autoconf automake xutils-dev screen
mkdir mali
cd mali/
git clone --recursive https://github.com/linux-sunxi/sunxi-mali.git
cd sunxi-mali/
make config
make
sudo make install
cd test/
ls -l
make

Reboot and get the triangle going.

2) Natively compile Qt5

based on this guide http://linux-sunxi.org/Qt5_For_Mali_Binaries

- But before getting started, some preparations are required:
- based on this generic "Building Qt5 from Git" tutorial > http://qt-project.org/wiki/Building_Qt_5_from_Git, we need to get some dependencies installed:
- QtWebkit > sudo apt-get install flex bison gperf libicu-dev libxslt-dev ruby (haven't tried it, ignored it)
- Qt WebEngine > sudo apt-get install libssl-dev libxcursor-dev libxcomposite-dev libxdamage-dev libxrandr-dev libfontconfig1-dev (haven't tried it, ignored it)
- Libxcb > sudo apt-get install "^libxcb.*" libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev

Note: on Libxcb, the regex expression failed with some circular dependencies, so I excluded the conflicting packages from the regex list:

sudo apt-get -s install $(cat libxcb_pkg_list)
(libxcb_pkg_list supplied below)

back to building Qt5 (5.1.0) - Cubieboard A20:

./configure -release -opensource -confirm-license -opengl es2 -no-eglfs -no-linuxfb -no-pch && make -j3 && sudo make install


testing with QtCinematic Experience (https://bitbucket.org/wickwire/qt530_cinematicexperience/downloads)

unzip wickwire-qt530_cinematicexperience-4eb9046d310b.zip
cd wickwire-qt530_cinematicexperience-4eb9046d310b
ls -l
/usr/local/Qt-5.1.0/bin/qmake .
make
./Qt5_CinematicExperience
DISPLAY=:0 ./Qt5_CinematicExperience

Window displaying Qt Cinematic Experience ;)


#### libxcb_pkg_list ####

libxcb-composite0
libxcb-composite0-dbg
libxcb-composite0-dev
libxcb-damage0
libxcb-damage0-dbg
libxcb-damage0-dev
libxcb-doc
libxcb-dpms0
libxcb-dpms0-dbg
libxcb-dpms0-dev
libxcb-dri2-0
libxcb-dri2-0-dbg
libxcb-dri2-0-dev
libxcb-glx0
libxcb-glx0-dbg
libxcb-glx0-dev
libxcb-randr0
libxcb-randr0-dbg
libxcb-randr0-dev
libxcb-record0
libxcb-record0-dbg
libxcb-record0-dev
libxcb-render0
libxcb-render0-dbg
libxcb-render0-dev
libxcb-res0
libxcb-res0-dbg
libxcb-res0-dev
libxcb-screensaver0
libxcb-screensaver0-dbg
libxcb-screensaver0-dev
libxcb-shape0
libxcb-shape0-dbg
libxcb-shape0-dev
libxcb-shm0
libxcb-shm0-dbg
libxcb-shm0-dev
libxcb-sync0
libxcb-sync0-dbg
libxcb-sync0-dev
libxcb-xevie0
libxcb-xevie0-dbg
libxcb-xevie0-dev
libxcb-xf86dri0
libxcb-xf86dri0-dbg
libxcb-xf86dri0-dev
libxcb-xfixes0
libxcb-xfixes0-dbg
libxcb-xfixes0-dev
libxcb-xinerama0
libxcb-xinerama0-dbg
libxcb-xinerama0-dev
libxcb-xprint0
libxcb-xprint0-dbg
libxcb-xprint0-dev
libxcb-xtest0
libxcb-xtest0-dbg
libxcb-xtest0-dev
libxcb-xv0
libxcb-xv0-dbg
libxcb-xv0-dev
libxcb-xvmc0
libxcb-xvmc0-dbg
libxcb-xvmc0-dev
libxcb1
libxcb1-dbg
libxcb1-dev
libxcb-util0
libxcb-util0-dev
libxcb-image0
libxcb-image0-dev
libxcb-keysyms1
libxcb-keysyms1-dev
libxcb-render-util0
libxcb-render-util0-dev
libxcb-ewmh-dev
libxcb-ewmh2
libxcb-icccm4
libxcb-icccm4-dev
libxcb-present0
libxcb-present0-dbg
libxcb-sync1
libxcb-sync1-dbg
libxcb-xkb-dev
libxcb-xkb1
libxcb-xkb1-dbg
libxcb-cursor-dev
libxcb-cursor0
libx11-xcb-dev
libglu1-mesa-dev
libxrender-dev
libxi-dev

#### libxcb_pkg_list ####

No comments :

Post a Comment