Cross-compiling OpenVG app for iMX6SoloX

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Cross-compiling OpenVG app for iMX6SoloX

Jump to solution
1,063 Views
ag74
Contributor III

Hi everyone,

I'm in charge of evaluating the iMX6SoloX processor using the Sabre evaluation board.

One of my co-worker burnt the fsl-image-gui-fb-imx6sxsabresd.ext3 and had a look at the samples in /opt/viv_sample/.

The next step is to cross compile one of our apps that draws using OpenVG and benchmark it with the iMX6SoloX to figure out if we'll use this processor for a future product.

I installed the Linaro GCC and succeeded in compiling a simple hello world but I failed to compile our OpenVG app.

Does anyone know:

1. Where I can download the rootfs that includes the dev libraries with the associated header files so I could cross compile.

2. A graphical user interface is ran when the Sabre board boots, I guess matchbox. How can I disable it ? Cause our app needs to run without any X11 or other server.

Any help would be appreciated.

Alex.

Labels (2)
0 Kudos
1 Solution
657 Views
ag74
Contributor III

I recompiled the whole rootfs and meta toolchain using the framebuffer backend and not the DirectFB backend and now the libs export the require functions.

I have another with the meta tools chains which sometimes generate executable files that can't be ran on the iMX6 board but I'll create another thread.

View solution in original post

0 Kudos
3 Replies
657 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hi ag74

1. The openVG drivers are just provided in binary forms, however please check the Mx6SX GPU demo framework SDK it includes tools to generate and build current provided demos.

i.MX 6SoloX Family of Applications Processors|Freescale

2. In this case you need to rebuild the bsp from it source, yocto rootfs, GPU sdk and bsp source can be downloaded from:

Embedded Linux for i.MX Applications Processo|Freescale

Regards

0 Kudos
658 Views
ag74
Contributor III

I recompiled the whole rootfs and meta toolchain using the framebuffer backend and not the DirectFB backend and now the libs export the require functions.

I have another with the meta tools chains which sometimes generate executable files that can't be ran on the iMX6 board but I'll create another thread.

0 Kudos
657 Views
ag74
Contributor III

Hi Bio_TICFSL,

Thanks for your reply and sorry my late one, I was on vacation.

I did succeeded in compiling a new rootfs using yocto. This rootfs does not include x11 which is what I wanted cause our app will have to draw as soon the board will boot with no x11.

My local.conf file contains the following settings

<...>

DISTRO_FEATURES_remove = "x11 wayland "

DISTRO_FEATURES_append = " directfb "

<...>

But now when I try to compile the old gpu_sdk_v1.00 demo samples, it fails at the link stage because fbCreateWindow and fbGetDisplayByIndex are missing.

Indeed the libEGL.so file does not export these functions.

With another iMX6 board, one from Toradex, I succeeded in compiling these demo samples and our app too, cause some libEGL-xxx.so files were generated by yocto. One of them was libEGL-fb.so which contained the required functions.

I guess I have to rebuild some libs with Yocto to generate the missing libs or maybe these missing functions are now unsupported and replaced by new ones.

Do you know if I have to reconfigure Yocto with some flags so it will generate the missing libxxx-fb.so files ? If so, which flags should be used ?

Or do I have to rewrite my app's initialization function so it will use other functions than fbCreateWindow & fbGetDisplayByIndex ?

Our app must run without X11.

Thanks for your help.

Best regards,

0 Kudos