[opensource-dev] Linux x64 - libmedia_plugin_cef.so error

Henri Beauchamp sldev at free.fr
Tue Mar 20 03:34:14 PDT 2018


On Tue, 20 Mar 2018 19:58:49 +1000, Alex wrote:

> This is what I get:
> alex at desktop:~/ivyviewer$ LD_LIBRARY_PATH="./lib:$LD_LIBRARY_PATH" ldd 
> ./bin/llplugin/libmedia_plugin_cef.so
>          linux-vdso.so.1 =>  (0x00007ffcedd68000)
>          librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 
> (0x00007f07a805e000)
>          libaprutil-1.so.0 => ./lib/libaprutil-1.so.0 
> (0x00007f07a7e15000)
>          libapr-1.so.0 => ./lib/libapr-1.so.0 (0x00007f07a7be5000)
>          libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 
> (0x00007f07a785f000)
>          libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 
> (0x00007f07a7509000)
>          libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 
> (0x00007f07a72f2000)
>          libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 
> (0x00007f07a70d3000)
>          libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 
> (0x00007f07a6cf3000)
>          /lib64/ld-linux-x86-64.so.2 (0x00007f07a8670000)
>          libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 
> (0x00007f07a6aee000)
>          libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 
> (0x00007f07a68b6000)
>          libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 
> (0x00007f07a66b2000)
> 
> alex at desktop:~/ivyviewer$ find . -name 'libcef.so'
> ./lib/libcef.so
> 
> I would have expected to see a 'not found' in the ldd output if it had 
> not been copied or it was sitting somewhere outside of LD_LIBRARY_PATH. 
> Is it likely has gotten screwed up during the link of 
> libmedia_plugin_cef.so?

Yes, obviously, libcef.so did not get linked with your plugin...

Check your indra/cmake/CEFPlugin.cmake: the library names changed there,
from libllceflib.a to libdullahan.a. Note also the bit of vodoo magic
needed under Linux to avoid seeing ld "optimizing out" the functions that
are needed in libcef_dll_wrapper.a and libdullahan.a. It should look like
this (note the -Wl,-[no-]whole-archive options):

if (LINUX)
  set(CEF_PLUGIN_LIBRARIES
      -Wl,-whole-archive
      ${ARCH_PREBUILT_DIRS_RELEASE}/libcef_dll_wrapper.a
      ${ARCH_PREBUILT_DIRS_RELEASE}/libdullahan.a
      -Wl,-no-whole-archive
      ${ARCH_PREBUILT_DIRS_RELEASE}/libcef.so
  )
endif ()

Henri.


More information about the opensource-dev mailing list