raspberrypi / firmware

This repository contains pre-compiled binaries of the current Raspberry Pi kernel and modules, userspace libraries, and bootloader/GPU firmware.
5.18k stars 1.68k forks source link

Include libvchostif.so (shared library) in addition to libvchostif.a (static library) #149

Closed OtherCrashOverride closed 6 years ago

OtherCrashOverride commented 11 years ago

See details here http://www.raspberrypi.org/phpBB3/viewtopic.php?f=33&t=33957

OtherCrashOverride commented 11 years ago

Any updates on this? Are there any issues that would prevent it?

popcornmix commented 11 years ago

I've changed it locally. I'll see if there are any problems. Should just be the addition of "SHARED" to:

add_library(vchostif SHARED
            ${VMCS_TARGET}/vcfilesys.c ${VMCS_TARGET}/vcmisc.c
            vc_vchi_gencmd.c vc_vchi_filesys.c
            vc_vchi_tvservice.c vc_vchi_cecservice.c
            vc_vchi_dispmanx.c vc_service_common.c)

You should be able to change this in userland repo and test.

Ruffio commented 9 years ago

@popcornmix this has been resolved?

quattrinili commented 8 years ago

To this end, there is also the problem that libvchostif.a does not contain any symbols (you can get this information with "nm - D libvchostif.a"), as I think that its symbols are not used anywhere in the repository and so the symbols are stripped away. Thus, as pointed out in a previous comment (@popcornmix) and as the change on the CMakeLists.txt is fairly easy, the library should be provided as dynamic.

Ruffio commented 8 years ago

@popcornmix were there any problems? Can it be merged or should it be discarded?

JamesH65 commented 6 years ago

Closing due to lack of activity. Reopen if you feel this issue is still relevant.

ali1234 commented 5 years ago

@OtherCrashOverride I'm really late to this issue, but when vchostif is static it gets included in bcm_host. Why can't high level languages use that?

See the above issue for context.

oomek commented 4 years ago

I've stumbled on this issue recently. I'm trying to use vc_tv_get_display_state() but even if I link to a static libvchostif.a I'm still getting undefined reference. Is there a reason why we still do not have a dynamic version of that lib since 2013?