Stable: 2.4.4
Development: 2.5.0-alpha4
mocp segmentation fault
I want to use mocp.
I build the mocp-2.4.4 successfully.
When I run mocp on my x-terminal, I rusulted the following.
[root@pear root]# mocp
Running the server...
Trying ALSA...
FATAL_ERROR: Server exited
[root@pear root]#
[root@pear .moc]# mocp -D -F -S
Loading plugins from /usr/local/lib/moc/decoder_plugins...
Loading plugin libffmpeg_decoder...
OK
Loading plugin libmp3_decoder...
OK
Trying ALSA...
Dec 26 11:46:08.499345: alsa.c:260 alsa_init_mixer_channel(): Opened mixer (PCM), volume range: 0-31
Dec 26 11:46:08.499982: alsa.c:260 alsa_init_mixer_channel(): Opened mixer (Master), volume range: 0-31
Dec 26 11:46:08.500258: alsa.c:180 handle_mixer_events(): Mixer event
Dec 26 11:46:08.500488: alsa.c:180 handle_mixer_events(): Mixer event
Dec 26 11:46:08.561502: audio.c:850 print_output_capabilities(): Sound driver capabilities: channels 1 - 10000, formats: 8-bit signed, 8-bit unsigned, 16-bit signed, 16-bit unsigned, 24-bit signed (as 32-bit samples), 24-bit unsigned (as 32-bit samples) little-endian (native)
Dec 26 11:46:08.581229: audio.c:864 audio_initialize(): Disabling 24bit modes because Allow24bitOutput is set to no.
Segmentation fault
[root@pear .moc]#
[root@pear .moc]#
[root@pear .moc]#
[root@pear .moc]# strace mocp -D -F -S
...
...
...open("/dev/snd/controlC0", O_RDONLY) = 9
fcntl64(9, F_SETFD, FD_CLOEXEC) = 0
ioctl(9, 0x81785501, 0xbfffeb70) = 0
close(9) = 0
open("/dev/snd/controlC0", O_RDWR) = 9
fcntl64(9, F_SETFD, FD_CLOEXEC) = 0
ioctl(9, USBDEVFS_CONTROL, 0xbfffef28) = 0
ioctl(9, USBDEVFS_CONNECTINFO, 0xbfffef60) = 0
close(9) = 0
close(7) = 0
semop(294912, 0xbffff610, 2) = 0
munmap(0x41252000, 65536) = 0
close(8) = 0
munmap(0x4042c000, 4096) = 0
munmap(0x4042d000, 4096) = 0
shmdt(0x41262000) = 0
shmctl(622593, IPC_64|IPC_STAT, 0xbffff5c0) = 0
shmctl(622593, IPC_64|IPC_RMID, 0) = 0
shmdt(0x4042b000) = 0
shmctl(589824, IPC_64|IPC_STAT, 0xbffff5a0) = 0
shmctl(589824, IPC_64|IPC_RMID, 0) = 0
semctl(294912, 0, IPC_64|IPC_RMID, 0xbffff5f8) = 0
gettimeofday({1324871034, 229950}, NULL) = 0
write(1, "Dec 26 12:43:54.229950: audio.c:"..., 277Dec 26 12:43:54.229950: audio.c:850 print_output_capabilities(): Sound driver capabilities: channels 1 - 10000, formats: 8-bit signed, 8-bit unsigned, 16-bit signed, 16-bit unsigned, 24-bit signed (as 32-bit samples), 24-bit unsigned (as 32-bit samples) little-endian (native)
) = 277
gettimeofday({1324871034, 230106}, NULL) = 0
write(1, "Dec 26 12:43:54.230106: audio.c:"..., 117Dec 26 12:43:54.230106: audio.c:864 audio_initialize(): Disabling 24bit modes because Allow24bitOutput is set to no.
) = 117
mmap2(NULL, 528384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x41252000
mmap2(NULL, 8392704, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x412d3000
mprotect(0x412d3000, 4096, PROT_NONE) = 0
clone(child_stack=0x41ad3a90, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|CLONE_DETACHED, [0], {entry_number:0, base_addr:0x41ad3b30, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 28810
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
[root@pear root]#
[root@pear root]# uname -a
Linux pear 2.4.37.11-6 #2 SMP Fri Dec 23 18:50:47 KST 2011 i686 i686 i386 GNU/Linux
[root@pear root]#
I can not run mocp because of the above "segmentation fault".
Please help me.
Any suggestion is welcome....
Probably Resolved By Upgrade
"bggim" was trying to run MOC on quite an old distribution. After
upgrading a number of packages, MOC no longer segfaulted. It would
have been nice to positively identify the cause of the segfault,
but we didn't so it will probably forever remain a mystery. There
was no obvious fault in the MOC code.