Beaglebone Black rev B - Embedded QT and X Sever - Deployment OS Ubuntu

I'm trying to get a good development system up and running for Beaglebone Black and Ubuntu.
The goal is to launch an embedded GUI application on a LCD cape on boot.
The application will control a hardware project and that is all it does. So it will be a special purpose device, not a general server.
The hardware leverages the Linux OS for WiFi, Sound, Graphics.

I'm open to using several development environments, QT, Mono, Java Swing...
I am on a Beaglebone Black rev B, so I'm limited to 2gb storage.
I'll need to have room for the application, so minimal size on the OS is needed.

I tried to get a minimal system working with Ubuntu Trusty (14.04) following the instructions to get the custom kernel running and SGX drivers.
I could get the SGX demos to work (evil morphing skull works great) but could not get the X server to work.
The desktop would load, and show the login screen.
Keyboard works, so I can log in.
However, if I move the mouse, the system would freeze up solid. Reboot is the only option.
I used a cross compiler machine to build QT applications. Console apps worked great. GUI failed.
I could get the pre-compiled examples to work with LinuxFB (Fingerpaint) but my custom compiled GUI would not work.

I dropped back to precise (12.04) and QT 4.8
X server works well for that version, but it is a bit slow.
Loading the entire desktop allows me to run QT GUI programs.
Now I'm trying to get a minimal X server QT build working.
I don't need the desktop, just enough of X server to run QT applications.
Has anyone been able to get a good minimal embedded QT environment to work?
If so, did you do it using linux packages or compiling and installing source code?
Did you end up installing the entire desktop or is there a minimum X server install that will run QT applications?

I'm trying to get a good development system up and running for Beaglebone
Black and Ubuntu.
The goal is to launch an embedded GUI application on a LCD cape on boot.
The application will control a hardware project and that is all it does.
So it will be a special purpose device, not a general server.
The hardware leverages the Linux OS for WiFi, Sound, Graphics.

I'm open to using several development environments, QT, Mono, Java
Swing...
I am on a Beaglebone Black rev B, so I'm limited to 2gb storage.
I'll need to have room for the application, so minimal size on the OS is
needed.

I tried to get a minimal system working with Ubuntu Trusty (14.04)
following the instructions to get the custom kernel running and SGX
drivers.
I could get the SGX demos to work (evil morphing skull works great) but
could not get the X server to work.

If you read the SGX release notes, Xorg is not supported.

http://processors.wiki.ti.com/index.php/RN_5_01_01_01#What_is_not_supported

TI are going to support wayland instead.

Regards,
John

Wayland! That's what I was missing.
I was installing ubuntu-desktop.
Looks like I'll be flashing a new image tonight and giving it a try.
Thanks!

Wayland! That's what I was missing.
I was installing ubuntu-desktop.
Looks like I'll be flashing a new image tonight and giving it a try.
Thanks!

From QT, you need qtwayland.

Regards,
John

于 2014-9-10 21:15, Peter Gregory 写道:

trying to get a minimal X server QT build working.

I am doing the same thing at TI 8148。 I had make a ubuntu 12.04 with x,jwm,and QT 4.8 for x11.
It take less than 500mb. A ubuntu without X is about 300mb in my experience. Adding a standalone QT
, it take about 400mb. So I decided to use the ubuntu with X and a small WM at last.

Ok, where does one get qtwayland?
It is not a part of the normal distribution repositories
Nor is it in ubuntu-sdk-team/ppa
I saw some references on how to download and compile it.
Is that my only option?
Do any of the desktops in the normal distribution work or are they all X desktops?

ubuntu-desktop (mouse locks it up)
lubuntu-desktop (mouse locks it up)
ubuntu-desktop-mir (didn’t work for me)
xubuntu-desktop

Ok, where does one get qtwayland?

You have to build It from source:

http://download.qt-project.org/official_releases/qt/5.3/5.3.1/single/

Or you can use archlinux for arm as I believe they have qtwayland already packaged. I haven’t used archlinux myself, but from what I have learned it looks pretty good.

Regards,
John

check your xorg.conf:

http://eewiki.net/display/linuxonarm/BeagleBone+Black#BeagleBoneBlack-HDMI

modesetting has a tendency to lockup

Regards,

Thanks for all the great info.
I was in the process of testing lxde (Lightweight X11 desktop environment) as of my last post
It works quite well.
I installed bone-ubuntu-14.04-console-armhf-2014-08-13-2gb.img.xz onto a SD card
I installed the SGX drivers as described at http://elinux.org/BeagleBoardUbuntu
I installed lxde (sudo apt-get install lxde)
I have a desktop that takes up about 1.3gb on my SD drive.
Mouse & HDMI work well.
I’m going to develop some quick apps & transfer to flash & test headless execution

How about performance ? I’d expect it would run sluggish.I wonder how well xcompmgr + cairo-dock would run on it heh.

Performance is not as good as my 2014 MacBook Pro, but it is not too bad.
I'm running on a 16gb SD card with 1gb swap (swappiness=0)
The mouse moves well.
You can expect a half second to second to launch applications.
QT Designer is responsive.
Navigation and dialogs pop up quickly.
It takes about 5 seconds to compile a simple Hello World application.
I'm missing Quick 2 libraries, so I'm tracking down what to apt-get to load them.

I'll probably build a cross compiler once I get a better handle on QT requirements on BBB

Peter, for your information. Installing Eclipse + armhf variant of gcc for cross compiling on Lubuntu ( Ubuntu period I presume ) is fairly simple. This is the only reason I originally bothered with Lubuntu. To test this. I have a text worklog of this, but currently is not really formatted well enough for others to read - YET

I've set up a cross compiler under Ubuntu 14.04 32 bit x86 in VMWare on my mac.
I built the QT 5.3 source using Lenaro hard float gcc.
I set up the kit for cross compiling using QT Creator and could remotely deploy console applications fine.
I ran into problems getting QT graphics applications to work.
I could compile them using the TI graphics SDK, but they would not run on the BBB.
I suspect I'm missing packages on the non-X BBB.
I'm learning more as I go, I'll probably try again and see if I can get Wayland working on BBB and get QTWayland plugin working.
My original idea was to use LinuxFB, but X seems to be required for QT graphics applications.
The QT 5.3 source won't compile the Quick libraries unless X or OpenGL libraries exist.

I thought it would make sense to get QT Creator to work on BBB and make it build the QT graphics applications.
At least to start.
Then I can work on the minimum BBB deployment image that can run the QT graphics application.

I've set up a cross compiler under Ubuntu 14.04 32 bit x86 in VMWare on
my mac.
I built the QT 5.3 source using Lenaro hard float gcc.
I set up the kit for cross compiling using QT Creator and could remotely
deploy console applications fine.
I ran into problems getting QT graphics applications to work.
I could compile them using the TI graphics SDK, but they would not run on
the BBB.
I suspect I'm missing packages on the non-X BBB.
I'm learning more as I go, I'll probably try again and see if I can get
Wayland working on BBB and get QTWayland plugin working.
My original idea was to use LinuxFB, but X seems to be required for QT
graphics applications.

Have you tried to run the QT demos with ³-platform eglfs²

You need the SGX libraries installed for this to work.

Regards,
John

I did not try -platform eglfs
However, I did get QT applications running under lxde desktop, Ubuntu Designer (qtdelarative-ubuntu-ui-toolkit-plugin)
It was very… very… slow.
Dragging UI elements to the designer window was painful.

So much for that experiment.

However, I did learn a lot from the process.

I’m now in the process of building a cross compiler on Ubuntu 14.04 LS using:

linaro 4.8 arm hard float compiler
TI GFX sdk (or do I use the source from RobertCNelson’s bb-kernel?)
QT Everywhere 5.3.1
QT Designer cross compiled

Hopefully this time I can get it all to work…

I did not try -platform eglfs
However, I did get QT applications running under lxde desktop, Ubuntu Designer (qtdelarative-ubuntu-ui-toolkit-plugin)
It was very… very… slow.
Dragging UI elements to the designer window was painful.

So much for that experiment.

However, I did learn a lot from the process.

I’m now in the process of building a cross compiler on Ubuntu 14.04 LS using:

linaro 4.8 arm hard float compiler
TI GFX sdk (or do I use the source from RobertCNelson’s bb-kernel?)
QT Everywhere 5.3.1
QT Designer cross compiled

Hopefully this time I can get it all to work…

There is something else you should keep an eye on, that is LXQT. This is LXDE rewritten using QT combined with Razor-QT. Not sure if it will work on BBB.

Regards,
John