Stable: 2.5.2
Development: 2.6-alpha3
first, I wanna say Hello everybody.
Unfortunately I have a proble with moc.
description as follows
I have installed(./configure make make install) ffmpeg-0.6.1 libid3tag-0.15.1b libid3tag-0.15.1b and librcc-0.2.9.
Then I install moc-2.4.4.
When I start moc, it said Can't load plugin libmp3_decoder: file not found
However I find libmp3_decoder.la, libmp3_decoder.so and libmp3_decoder.a
ldd /usr/local/lib/moc/decoder_plugins/libmp3_decoder.so
it said linux-gate.so.1 => (0x00a72000)
libmad.so.0 => not found
libid3tag.so.0 => not found
libz.so.1 => /lib/libz.so.1 (0x00ec7000)
librcc.so.0 => not found
libm.so.6 => /lib/libm.so.6 (0x0018b000)
libdl.so.2 => /lib/libdl.so.2 (0x00d6a000)
libpthread.so.0 => /lib/libpthread.so.0 (0x009ea000)
libc.so.6 => /lib/libc.so.6 (0x0024e000)
/lib/ld-linux.so.2 (0x00811000)
mocp -SDF
it said Loading plugins from /usr/local/lib/moc/decoder_plugins...
Loading plugin libmp3_decoder...
Can't load plugin libmp3_decoder: file not found
And I'm using a redhat.
this problem really MAKEs me MAD.
Do you have an idea to solve it?
shana
Wed, 2010-12-08 01:04
Permalink
Solved
ldconfig :)
andr00
Mon, 2011-02-14 07:27
Permalink
Help!
I'm having the same problem, could you explain me exactly what did you do?
I've tried the command "ldconfig" and re-installing moc, but it didn't work :(
Thanks.
Yo
Mon, 2025-12-29 17:30
Permalink
Issue for "Can't load plugin libmp3_decoder: file not found"
# Find the location of the library :
dpkg -L moc | grep libmp3_decoder
--> /usr/lib/arm-linux-gnueabihf/moc/decoder_plugins/libmp3_decoder.so
# Check dependencies
ldd /usr/lib/arm-linux-gnueabihf/moc/decoder_plugins/libmp3_decoder.so
-->
/usr/lib/arm-linux-gnueabihf/libarmmem-${PLATFORM}.so => /usr/lib/arm-linux-gnueabihf/libarmmem-v6l.so (0xb6f90000)
libmad.so.0 => /lib/arm-linux-gnueabihf/libmad.so.0 (0xb6f79000)
libid3tag.so.0 => /lib/arm-linux-gnueabihf/libid3tag.so.0 (0xb6fd6000)
libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xb6dd0000)
/lib/ld-linux-armhf.so.3 (0xb6fb0000)
libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0xb6db8000)
# Check the file permissions
ls -la /usr/lib/arm-linux-gnueabihf/moc/decoder_plugins/libmp3_decoder.so
# The result should show the permissions -rw-r--r--. If read permissions (r) are missing for the user or group, this is the cause of the problem.
# Simulate loading the library with Python to diagnose the problem.
python3 -c "import ctypes; ctypes.CDLL('/usr/lib/arm-linux-gnueabihf/moc/decoder_plugins/libmp3_decoder.so')"
--> Traceback (most recent call last):
File "<string>", line 1, in <module>
import ctypes; ctypes.CDLL('/usr/lib/arm-linux-gnueabihf/moc/decoder_plugins/libmp3_decoder.so')
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/ctypes/__init__.py", line 390, in __init__
self._handle = _dlopen(self._name, mode)
~~~~~~~^^^^^^^^^^^^^^^^^^
OSError: libmad.so.0: cannot enable executable stack as shared object requires: Invalid argument
# This security error indicates that the libmad library was compiled with an executable stack (execstack), an outdated practice that modern Linux kernels reject for security reasons.
# Pour corriger cela, modifier l'attribut de la pile exécutable dans le binaire de libmad.
sudo apt install patchelf
sudo patchelf --clear-execstack /lib/arm-linux-gnueabihf/libmad.so.0
mocp -x
mocp
------------------------------------------------
The error message has disappeared.
jcf
Mon, 2025-12-29 20:54
Permalink
Thanks
Thanks for your post, Yo. I'll continue this with you off-Forum as the discussion is likely to get quite technical.
It might also shed a light on another problem which has been reported to me by e-mail and on which I have not been able to make any progress.