-
Hello, I'm trying to compile and use roc with a debian/raspbian system, and I got an error with the compiled library. The library
It seems that the library is not compiled with the right flags, and can't find the libraries in the directory I've also tried to compile roc with the headers from the installed from the raspbian package, but the compilation failed with this error : scons -Q --enable-pulseaudio-modules --build-3rdparty=openfec --with-pulseaudio=/usr/include/pulse
error: can't find /usr/include/pulse/src/.libs/libpulsecore-*.so What does I'm doing wrong ? Thank you for your help ! |
Beta Was this translation helpful? Give feedback.
Replies: 8 comments
-
Hi, sorry for late reply! Roc PulseAudio modules need full PulseAudio sources for building. If you use When you use What version of PulseAudio is installed on your Raspbian and where are its libraries located? Also, what exact error are you getting when trying to load the module? You can find it in |
Beta Was this translation helpful? Give feedback.
-
Hello, thank you for looking in my problem. When I compile the plugin with the full pulseaudio sources, it gives me libraries which are incompatible the system pulseaudio environement : Debian install some of the libraries in the subdirectory ls -l /usr/lib/x86_64-linux-gnu/pulseaudio/
total 1276
-rw-r--r-- 1 root root 542888 août 15 2019 libpulsecommon-12.2.so
-rw-r--r-- 1 root root 707256 août 15 2019 libpulsecore-12.2.so
-rw-r--r-- 1 root root 51040 août 15 2019 libpulsedsp.so ldd roc/build/x86_64-pc-linux-gnu/gcc-8.3.0-release/module-roc-sink-input.so
linux-vdso.so.1 (0x00007ffc1dc97000)
libpulse.so.0 => /usr/lib/x86_64-linux-gnu/libpulse.so.0 (0x00007fd0b2aa4000)
…
libpulsecommon-12.2.so => not found
libpulsecore-12.2.so => not found
libltdl.so.7 => /usr/lib/x86_64-linux-gnu/libltdl.so.7 (0x00007fd0b2a04000)
… I've tried to modify the environment path in the compilation, by prefixing the scons command with environment variable, without success. LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/pulseaudio/ scons … I would like to keep the system as close as possible from the out of box installation, and I don't want to replace the libraries installed from the system. I am available to test any solution you can give to me :) Thank you |
Beta Was this translation helpful? Give feedback.
-
Are you trying to build Roc PulseAudio modules for Raspbian or for PC (x86_64-linux-gnu)? |
Beta Was this translation helpful? Give feedback.
-
Did you try:
LD_LIBRARY_PATH is used at run-time, not compile-time. When PulseAudio loads a module, the correct directory (/usr/lib/x86_64-linux-gnu/pulseaudio) should be already added to the search path (internally in the running PulseAudio process). Did you try to actually install and load Roc modules? Like described here: https://roc-project.github.io/roc/docs/running/pulseaudio_modules.html#installing |
Beta Was this translation helpful? Give feedback.
-
Thanks for your help. Indeed, after copying the file in the right place, everything came back in order. I've made some tests and the connexion works fine. Thank you. |
Beta Was this translation helpful? Give feedback.
-
Good to hear! And thanks for your interest in the project. |
Beta Was this translation helpful? Give feedback.
-
You'r welcome :), thanks for your projet. My little pi0 is now a complete audio streaming server ! I do not know if I should open an issue, but I run into a segfault when I load the receiver module directly in the system.pa, after loading the module zero-conf publish. When I load the roc module once pulseaudio is completely initialized, by using pactl, everything works fine. I've found a solution by disabling zeroconf (which I do not use at all). |
Beta Was this translation helpful? Give feedback.
-
Yes, would be great if you open an issue and attach config, log and a backtrace, if any. |
Beta Was this translation helpful? Give feedback.
Did you try:
LD_LIBRARY_PATH is used at run-time, not compile-time.
When PulseAudio loads a module, the correct directory (/usr/lib/x86_64-linux-gnu/pulseaudio) should be already added to the search path (internally in the running PulseAudio process).
Did you try to actually install and load Roc modules? Like described here: https://roc-project.github.io/roc/docs/running/pulseaudio_modules.html#installing