I am having trouble loading this module when I build OBS myself:
error: os_dlopen(/home/username/.config/obs-studio/plugins/linux-pipewire-audio/bin/64bit/linux-pipewire-audio.so->/home/username/.config/obs-studio/plugins/linux-pipewire-audio/bin/64bit/linux-pipewire-audio.so): libobs.so.0: cannot open shared object file: No such file or directory
I have a /etc/ld.so.conf.d/obs-studio.conf:
/path/to/obs-studio/lib
which is where libobs.so.0 and libobs.so.30 exist, and I get the following output from ldconfig -p | grep obs:
From what I understand, ldconfig doesn't add a .so.0 if there is a later version. When run ldd linux-pipewire-audio.so I get:
linux-vdso.so.1 (0x00007ffc4591d000)
libobs.so.0 => not found
libpipewire-0.3.so.0 => /lib/x86_64-linux-gnu/libpipewire-0.3.so.0 (0x00007db050d5f000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007db050a00000)
/lib64/ld-linux-x86-64.so.2 (0x00007db050e6f000)
So, it's falling over because ldconfig only sets up a link for libobs.so and libobs.so.30. Is this the expected behaviour for a plugin to link to the .so.0 specifically? If so, how do I add the .so.0 entry to ldconfig cache?
I am having trouble loading this module when I build OBS myself:
I have a
/etc/ld.so.conf.d/obs-studio.conf
:which is where
libobs.so.0
andlibobs.so.30
exist, and I get the following output from ldconfig -p | grep obs:From what I understand,
ldconfig
doesn't add a.so.0
if there is a later version. When runldd linux-pipewire-audio.so
I get:So, it's falling over because
ldconfig
only sets up a link forlibobs.so
andlibobs.so.30
. Is this the expected behaviour for a plugin to link to the .so.0 specifically? If so, how do I add the .so.0 entry to ldconfig cache?