[yocto] [meta-raspberrypi] Using the camera

Alex J Lennon ajlennon at dynamicdevices.co.uk
Wed Jun 11 05:54:35 PDT 2014


> I merged the patches but there is a strange behavior. With --as-needed
> removed i still get the unneeded dependency.
>  0x00000001 (NEEDED)                     Shared library: [libmmal_core.so]
>  0x00000001 (NEEDED)                     Shared library: [libmmal_util.so]
>  0x00000001 (NEEDED)                     Shared library:
> [libmmal_vc_client.so]
>  0x00000001 (NEEDED)                     Shared library: [libvcos.so]
>  0x00000001 (NEEDED)                     Shared library: [libbcm_host.so]
>  0x00000001 (NEEDED)                     Shared library: [libpthread.so.0]
>  0x00000001 (NEEDED)                     Shared library: [libdl.so.2]
>  0x00000001 (NEEDED)                     Shared library: [librt.so.1]
>  0x00000001 (NEEDED)                     Shared library: [libvchiq_arm.so]
>  0x00000001 (NEEDED)                     Shared library: [libc.so.6]
>
> Alex, can you take another look on this? It seems like somehow the fix
> doesn't work for me.

If I understand you correctly the issue is that by default bitbake is
providing --no-as-needed into the userland configuration step

This has the effect that libmmal_vc_client is removed as a needed
library, therefore not loaded when raspivid loads,
and therefore doesn't register components that it would register when it
was loaded (because of use of
__attribute__((constructor,used)) decorating functions in that library).

We override --as-needed with --no-as-needed so that the dependency upon
libmmal_vc_client is no longer removed,
which I think is what you show above. If you remove my patch you should
see libmmal_vc_client disappear I believe.

Cheers,

Alex




More information about the yocto mailing list