Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release is linked to libobs.so.0 #77

Open
stephematician opened this issue Oct 28, 2024 · 0 comments
Open

Release is linked to libobs.so.0 #77

stephematician opened this issue Oct 28, 2024 · 0 comments

Comments

@stephematician
Copy link

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:

	libobs.so.30 (libc6,x86-64) => path/to//obs-studio/lib/libobs.so.30
	libobs.so (libc6,x86-64) => /path/to/obs-studio/lib/libobs.so
	libobs-scripting.so.30 (libc6,x86-64) => /path/to/obs-studio/lib/libobs-scripting.so.30
	libobs-scripting.so (libc6,x86-64) => /path/to/obs-studio/lib/libobs-scripting.so
	libobs-opengl.so.30 (libc6,x86-64) => /path/to/obs-studio/lib/libobs-opengl.so.30
	libobs-opengl.so (libc6,x86-64) => /path/to/obs-studio/lib/libobs-opengl.so
	libobs-frontend-api.so.30 (libc6,x86-64) => /path/to/obs-studio/lib/libobs-frontend-api.so.30
	libobs-frontend-api.so (libc6,x86-64) => /path/to/obs-studio/lib/libobs-frontend-api.so

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?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant