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

Messages such as undefined symbol: pa_threaded_mainloop_once_unlocked on startup #47384

Open
Tracked by #76797
follower opened this issue Mar 26, 2021 · 2 comments
Open
Tracked by #76797

Comments

@follower
Copy link
Contributor

follower commented Mar 26, 2021

Godot version:
3.3.rc6.official

OS/device including version:

Elementary OS based on Ubuntu:

Linux hostname 5.4.0-65-generic #73~18.04.1-Ubuntu SMP Tue Jan 19 09:02:24 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Issue description:

Running the editor (no project required) results in messages about undefined symbols:

/usr/lib/x86_64-linux-gnu/libpulse.so.0: undefined symbol: pa_threaded_mainloop_once_unlocked
/usr/lib/x86_64-linux-gnu/libpulse.so.0: undefined symbol: pa_thread_make_realtime

Full output:

$ ~/<path>/Godot_v3.3-rc6_x11.64
Godot Engine v3.3.rc6.official - https://godotengine.org
WARNING: initialize: XOpenIM failed
   At: platform/x11/os_x11.cpp:200.
WARNING: initialize: XCreateIC couldn't create xic
   At: platform/x11/os_x11.cpp:508.
OpenGL ES 3.0 Renderer: Mesa DRI Intel(R) HD Graphics 4400 (HSW GT2)
OpenGL ES Batching: ON
/usr/lib/x86_64-linux-gnu/libpulse.so.0: undefined symbol: pa_threaded_mainloop_once_unlocked
/usr/lib/x86_64-linux-gnu/libpulse.so.0: undefined symbol: pa_thread_make_realtime

My initial assumption is that it's related to PulseAudio versions and the wrapping that Godot does of the audio shared libraries on Linux.

See, for example:

#define pa_threaded_mainloop_once_unlocked pa_threaded_mainloop_once_unlocked_dylibloader_orig_pulse

and:

// pa_threaded_mainloop_once_unlocked
*(void **) (&pa_threaded_mainloop_once_unlocked_dylibloader_wrapper_pulse) = dlsym(handle, "pa_threaded_mainloop_once_unlocked");
if (verbose) {
error = dlerror();
if (error != NULL) {
fprintf(stderr, "%s\n", error);
}
}

Relevant version info of Pulse audio (this version of Elementary is based on the Ubuntu 18.04 LTS release):

$ pulseaudio --version
pulseaudio 11.1

Edits:

Steps to reproduce:

Run the editor from the command line.

Minimal reproduction project:
N/A

@hpvb
Copy link
Member

hpvb commented Mar 26, 2021

These messages are entirely cosmetic as Godot doesn't use those symbols and can be ignored. We'll try to come up with a way of not showing them though.

@dpensky
Copy link

dpensky commented Apr 7, 2021

On rc8 this warning is still showing, but I didn't notice any problems regarding the sounds in the editor at least.
Godot Engine v3.3.rc8.official - https://godotengine.org
OpenGL ES 3.0 Renderer: GeForce GT 740/PCIe/SSE2
OpenGL ES Batching: ON
/usr/lib/x86_64-linux-gnu/libpulse.so.0: undefined symbol: pa_threaded_mainloop_once_unlocked
/usr/lib/x86_64-linux-gnu/libpulse.so.0: undefined symbol: pa_thread_make_realtime

@akien-mga akien-mga modified the milestones: 3.3, 3.5 Oct 26, 2021
@KoBeWi KoBeWi modified the milestones: 3.5, 3.x Apr 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants