How to use armel .so in armhf system?

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

How to use armel .so in armhf system?

Jump to solution
3,370 Views
BlangeroWang
Contributor II

Hi everyone:

  I'm just using an armhf system on imx6q , and I need to use gpu-viv in it . 

  Timesys has an gpu-viv for armhf but there's no Directfb .so files in ti . (the one I need is libdirectfb_gal.so)

  I got an armel version , but when running dfbinfo ( which will check libdirectfb_gal.so ) , I got this:

:smileyalert: Direct/Modules: Unable to dlopen `/usr/lib/directfb-1.4-0/systems/libdirectfb_gal.so'!

    --> /usr/lib/directfb-1.4-0/systems/libdirectfb_gal.so: cannot open shared object file: No such file or directory

:smileyminus: [19057: -STACK- ]

  #0  0x2ad4bc15 in ?? () from /usr/lib/libdirect-1.4.so.0 [0x2ad3f000]

  #1  0x2ad4ae1d in direct_modules_explore_directory () from /usr/lib/libdirect-1.4.so.0 [0x2ad3f000]

  #2  0x2ad03bd1 in dfb_system_lookup () from /usr/lib/libdirectfb-1.4.so.0 [0x2ac50000]

  #3  0x2acbf879 in dfb_core_create () from /usr/lib/libdirectfb-1.4.so.0 [0x2ac50000]

  #4  0x00008690 in DirectFBCreate () from dfbinfo [0x8000]

  #5  0x000087f9 in ?? () from dfbinfo [0x8000]

From the readelf I'm sure this is an armel version file, but armel version files SHOULD be ok on a armhf system , isn't it!?

I compiled a test which will print "hello" on an armel system and it CAN execute on my armhf system.

What's wrong with the " libdirectfb_gal.so"

Anyone know? Please help me !

Thanks in advance!

___________________________

Shinghua Wang

1 Solution
2,008 Views
OtavioSalvador
Senior Contributor II

Hi, you can now use full system in hardfp mode. We got the 3.5.7 GPU (which provides armel and armhf) into Yocto and this works like a charm.

Please check the training that DaianeAngolini did; she did an awesome document which guides you in the learning process of using Yocto. Her doc is at https://community.freescale.com/docs/DOC-94849

View solution in original post

16 Replies
2,008 Views
daiane_angolini
NXP Employee
NXP Employee

In addition, you can see some results of my test in the following links:

X11:

Re: [meta-freescale] GPU tests on master next - core-image-x11 - sfp

Directfb:

Re: [meta-freescale] Direct FB HFP - core-image-directfb

2,008 Views
BlangeroWang
Contributor II

Thanks for your reply , but would you please tell me how to get DirectFB shared library such as libdirectfb_gal.so using Yocto?

To avoid wasting too much of your time ,I just need the way in a few words such as "Yocto provides source code :smileyhappy: " or "Yocto provides all the shared libraries ..."

That seems to be enough for me now.

0 Kudos
2,009 Views
daiane_angolini
NXP Employee
NXP Employee

If you want the source code, find the file from downloads folder and use it (or see it, taste it)

If you want the -dev packages installed into your image, please, add the following in your local.conf

IMAGE_FEATURES += "dev-pkgs"

0 Kudos
2,009 Views
BlangeroWang
Contributor II

Hi :

I'm using yocto and it seems to work well except the forever built time .... I got sth wrong well getting a rootfs.tar but I use find . -name to find the shared library I want , BUT , something seems to be wrong when I

ubuntu@ubuntu-virtual-machine:~/fsl-community-bsp/build$ readelf -a ./tmp/work/imx6qsabrelite-poky-linux-gnueabi/gpu-viv-bin-mx6q/1_1.1.0-r5.0/image/usr/lib/libVDK.so |grep VFP

  Tag_FP_arch: VFPv2

I get this one ,which means it's a armel libVDK.so ,same with the libdirectfb_gal.so

Where did I do wrong ?

Do I need to set something like arch in conf/local.conf ?

Thanks in advance

0 Kudos
2,009 Views
OtavioSalvador
Senior Contributor II

You have used Dylan branch, which is fine but only have Soft-FP system.

For Hard-FP you must use master for now (which will become Dora in few days).

0 Kudos
2,008 Views
OtavioSalvador
Senior Contributor II

It provides all you need and works fine with DirectFB 1.6.3.

0 Kudos
2,009 Views
OtavioSalvador
Senior Contributor II

Hi, you can now use full system in hardfp mode. We got the 3.5.7 GPU (which provides armel and armhf) into Yocto and this works like a charm.

Please check the training that DaianeAngolini did; she did an awesome document which guides you in the learning process of using Yocto. Her doc is at https://community.freescale.com/docs/DOC-94849

2,008 Views
johanngause
Contributor I

hello,

i need the fsl-mm-codecs (libfslcodec) libraries compiled for hard-float, but i did not find any source where to download them. you said we can use full system in hardfp mode, but without the armhf-codecs i am not able to use libmfw_gst_mp3enc.so and other libmfw_gst* with gstreamer - that's pretty disappointing :smileysad:

did i miss something? if so, where can i download hardfp-fsl-mm-codecs?

thanks!

0 Kudos
2,008 Views
OtavioSalvador
Senior Contributor II

Last time I discussed this, it was said to be the codecs are /software codecs/ and that the GStreamer ones should provide similar performance. FabioEstevam or DaianeAngolini can you guys help me on this one? :smileygrin:

0 Kudos
2,009 Views
daiane_angolini
NXP Employee
NXP Employee

Sorry, I missed what is the question....

the MM plugins are divided in 2 types: pre-built or source code. All VPU plugin are source coded, so you build it using the flavor you want (hfp or sfp)

For those pre-build, it´s all about audio decoder/encoder made *by sotfware*, so, if the binary was not provided on the flavor you want, you only use the normal/standard/mainline gstreamer plugin.

As I remember, the latest MM release does provide pre-built libraries for the two flavor (hfp AND sfp), if this is not working, please, report the bug on meta-freescale.

Please, let me know if what I replied is what you asked :smileysilly: (just a little confused)

2,009 Views
johanngause
Contributor I

thanks for your reply!

i was able to build the codecs from source for armhf platform, but i would really like to get the pre-build software-codecs as well for armhf platform!

unfortunately the armhf-binaries for the software-codecs are not included in "i.MX6 Q/D/DL/S L3.0.35_4.0.0 GA release" or in "i.MX6 Q/D/DL/S L3.0.35_4.1.0 GA release" (and i was not able to find them elsewhere)

actually i would prefer to use the FSL-software-codecs, because i had less issues with them, they performed better and it would save me time because i don't have to recreate all my working pipelines, which is sometimes very annoying.

so could you please release the pre-build software-codecs for armhf platform as well?

thanks!

0 Kudos
2,009 Views
daiane_angolini
NXP Employee
NXP Employee

I´m sorry to say so, but I don´t (personally) have control on releases.

You may wait for next release, and maybe it has what you need.

Or you should contact your local FSL representative and ask for him to enter a feature request.

And I understand when you say that create pipelines is annoying :smileysad:

0 Kudos
2,008 Views
BlangeroWang
Contributor II

Thanks so much for your reply, I knew Yocto for a long time but still havn't got a chance to try with it .

I've got the armhf version of GPU but  DirectFB is missing in it, as far as I know the source of GPU is not available,

so I just wonder how to get DirectFB shared library such as libdirectfb_gal.so using Yocto , is it possible ? And how ?

0 Kudos
2,008 Views
OtavioSalvador
Senior Contributor II

It is not missing; it is available and working fine for hardfp and softfp. As I said, the 3.5.7 code is fully merged into meta-fsl-arm and is exactly what you are looking for.    

0 Kudos
2,009 Views
BlangeroWang
Contributor II

Hi:

  I'm now building the base image but it really seems to be as long as forever ....  I've got really low computer , so can I just download and compile only the packages which I want ? I'v been building for 4 hours but it seems that there's more than 3/4 left!

0 Kudos
2,009 Views
OtavioSalvador
Senior Contributor II

hehe, this indeed takes a long time. Specially first build, it downloads all the sources and takes quite some time. After your first build it should be faster and it reuses pre-build packages so don't be afraid ;-)

0 Kudos