Allegro.cc - Online Community

Allegro.cc Forums » Installation, Setup & Configuration » Porting to iMX6 Board help

This thread is locked; no one can reply to it. rss feed Print
Porting to iMX6 Board help
Kev Callahan
Member #6,022
July 2005
avatar

I'm probably way in above my head here but could do with some pointers..

I note there's a raspberry pi port of Allegro that I have used but I'm now playing around with another (ARM) IMX6 board (Sabre Lite) - http://boundarydevices.com/product/sabre-lite-imx6-sbc/

I have installed an Ubuntu image with GLES support; glxgears runs at 280fps so hardware acceleration is working. http://boundarydevices.com/ubuntu-trusty-for-i-mx6-boards-june-2015-kernel-3-10-53/

I then ran apt-get install to get Allegro 5 libraries installed..

My code compiles but when I run it, I get: "libGL error: UNIX signal already caught"
I'm guessing that the allegro libraries installed aren't playing nicely with GLES(?)
[Fails at al_create_display() call]. This works on intel boards (and rpi).

Any clues as to where I should be going from this point?

Should I look at trying to recompile allegro natively on the board; I have tried this but failed as it couldn't find X libraries (it appears X has been hand-crafted for this board).. Guess this is currently my only course of action?

Kev

GullRaDriel
Member #3,861
September 2003
avatar

I would first run the program inside a gdb / dbx / choose_ur_favorite_debbuger and see with a backtrace where exactly it crashes.

"Code is like shit - it only smells if it is not yours"
Allegro Wiki, full of examples and articles !!

Kev Callahan
Member #6,022
July 2005
avatar

Thanks for the guidance:

Mmmm...

strace gives me (in /var/log/apport.log)

gdbus call error: Error: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown
The name org.gnone.SessionManage was not provided by any .service files.

Must admit I haven't the lightest idea what that means.
My suspicion is it's trying to do something that OPENGL has that GLES doesn't.

But that's only a hunch.

EDIT:
Now endeavouring to build allegro from scratch on the board.
Have created a ../cmake/Toolchain-imx6.cmake file based on the RPi one.
Unfortunately (as stated above) it can't find X11 - ie it's looking for xf86misc.h on the system and I imagine because the O/S is a cut-down version, the file isn't present.
Trying to install anything that may help appears to give me the message "xxx is manually installed".. :(

Chris Katko
Member #1,881
January 2002
avatar

First! Google the error code!

http://askubuntu.com/questions/419783/gtk-warning-calling-inhibit-failed-gdbus-errororg

Quote:

(gedit:12512): Gtk-WARNING **: Calling Inhibit failed: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files
can be solved by updating gir1.2-gtksource-3.0

sudo apt-get install gir1.2-gtksource-3.0

Might or might not fix it.

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs
"Political Correctness is fascism disguised as manners" --George Carlin

Kev Callahan
Member #6,022
July 2005
avatar

I have googled the fault but so far haven't ascertained the issue.
That link you posted is for the 'gedit' application wrt gtk libraries..
I don't believe it's the same error I'm getting....

EDIT:
Looking more closely at this, those errors seem to be unrelated..
I've attached the last lines of output from strace.
Hope someone could make some sense of it for me.

EDIT2:
To put this to bed for a while..
I downloaded the allegro source code using 'apt-get source allegro5'
Rebuilding this (cmake ..) on the target card appears to have improved things.
I still get some libGL errors, but my code now runs (albeit transparency is currently now working and some fonts have missing characters, so still some work to do (this works on the Pi & Intel compatibles))...
Still at least I can now instrument the allegro library and track down the issues.
I wonder if I need to look at how the raspberry pi does things and emulate this for the imx6 to fix some of these problems.. time will tell I guess.

EDIT3:
Well allegro does 'sort of' work on this card - transparency doesn't seem to though and also I get image corruption on screen sometimes. Trying to get debug version of allegro to build and run, hope I can figure out what's happening (I get a few libGL errors, so will try to track down when they're output).

Go to: