Hello. my uname -a: Linux omni 2.6.11-gentoo-r6-Omni #2 SMP Sat Apr 9 20:37:16 GMT 2005 x86_64 AMD Athlon(tm) 64 Processor 3200+ AuthenticAMD GNU/Linux Problem: ZSNES, upon loading any rom, lacks any sort of audio playback at all. Running zsnes from command line shows no errors related to this. Steps to reproduce: 1. Emerge zsnes (which is a 32 bit app) on 64 bit environment via gcc multilib 2. Run zsnes and load any rom Actual Results: No audio Expected Results: Audio Overview description: Compiled the 32 bit zsnes on my 64 bit amd Gentoo 2005.0 with multilib gcc (no chroot). Upon configuration of zsnes, all necessary libraries were found (SDL, etc). All emul ebuilds have been emerged. SDL was emerged with use flags +alsa and +oss. To install Alsa I did not build support in kernel, I emerged alsa-driver. lsmod reports ioctl32 is loaded (thus 32 bit emulation for alsa should happen). SDL_AUDIODRIVER is set to alsa. I have confirmed that this is an isolated issue, not a general 32 bit audio compatibility problem, by emerging nwn (which is a 32 bit app that uses SDL) and it played audio successfully. /usr/bin/sdl-config has /emul/linux/x86/lib and /emul/linux/x86/usr/lib in libdirs= I believe this is a bug because I am pretty sure I have everything set up correctly, and other 32 bit apps requiring SDL for audio work (even though nwn uses its own sdl). Additional information: Here is an strace of zsnes: execve("/usr/games/bin/zsnes", ["zsnes"], [/* 65 vars */]) = 0 [ Process PID=6018 runs in 32 bit mode. ] uname({sys="Linux", node="omni", ...}) = 0 brk(0) = 0x85b1000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("/usr/lib/tls/i686/sse2/libz.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) stat64(0xffffc600, 0xffffc670) = -1 ENOENT (No such file or directory) open("/usr/lib/tls/i686/libz.so.1", O_RDONLY) = -1 ENOENT (No such file or direc tory) stat64(0xffffc600, 0xffffc670) = -1 ENOENT (No such file or directory) open("/usr/lib/tls/sse2/libz.so.1", O_RDONLY) = -1 ENOENT (No such file or direc tory) stat64(0xffffc600, 0xffffc670) = -1 ENOENT (No such file or directory) open("/usr/lib/tls/libz.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) stat64(0xffffc600, 0xffffc670) = 0 open("/usr/lib/i686/sse2/libz.so.1", O_RDONLY) = -1 ENOENT (No such file or dire ctory) stat64(0xffffc600, 0xffffc670) = -1 ENOENT (No such file or directory) open("/usr/lib/i686/libz.so.1", O_RDONLY) = -1 ENOENT (No such file or directory ) stat64(0xffffc600, 0xffffc670) = -1 ENOENT (No such file or directory) open("/usr/lib/sse2/libz.so.1", O_RDONLY) = -1 ENOENT (No such file or directory ) stat64(0xffffc600, 0xffffc670) = -1 ENOENT (No such file or directory) open("/usr/lib/libz.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) stat64(0xffffc600, 0xffffc670) = 0 open("/etc/ld.so.cache", O_RDONLY) = 3 fstat64(0x3, 0xffffc5fc) = 0 mmap2(NULL, 132270, PROT_READ, MAP_PRIVATE, 3, 0) = 0x5556c000 close(3) = 0 open("/emul/linux/x86/lib/libz.so.1", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300\21"..., 512) = 512 fstat64(0x3, 0xffffc670) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x55 58d000 mmap2(NULL, 60008, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x555 8e000 mmap2(0x5559c000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRIT E, 3, 0xd) = 0x5559c000 close(3) = 0 open("/usr/lib/tls/libSDL-1.2.so.0", O_RDONLY) = -1 ENOENT (No such file or dire ctory) open("/usr/lib/libSDL-1.2.so.0", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`\6\1\0\0"..., 512) = 512 close(3) = 0 open("/emul/linux/x86/usr/lib/libSDL-1.2.so.0", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\254\0"..., 512) = 512 fstat64(0x3, 0xffffc654) = 0 mmap2(NULL, 367532, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x55 59d000 mmap2(0x555ee000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRIT E, 3, 0x50) = 0x555ee000 mmap2(0x555f0000, 27564, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMO US, -1, 0) = 0x555f0000 close(3) = 0 open("/usr/lib/tls/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or dire ctory) open("/usr/lib/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or director y) open("/lib32/libpthread.so.0", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300B\0"..., 512) = 512 fstat64(0x3, 0xffffc638) = 0 mmap2(NULL, 332928, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x55 5f7000 mmap2(0x55605000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRIT E, 3, 0xd) = 0x55605000 mmap2(0x55607000, 267392, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYM OUS, -1, 0) = 0x55607000 close(3) = 0 open("/usr/lib/tls/libpng.so.3", O_RDONLY) = -1 ENOENT (No such file or director y) open("/usr/lib/libpng.so.3", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240y\0\0"..., 512) = 512 close(3) = 0 open("/emul/linux/x86/usr/lib/libpng.so.3", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300Z\0"..., 512) = 512 fstat64(0x3, 0xffffc61c) = 0 mmap2(NULL, 196484, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x55 649000 mmap2(0x55678000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRIT E, 3, 0x2e) = 0x55678000 close(3) = 0 open("/usr/lib/tls/libGL.so.1", O_RDONLY) = -1 ENOENT (No such file or directory ) open("/usr/lib/libGL.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/lib32/opengl/nvidia/lib/libGL.so.1", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200U\2"..., 512) = 512 fstat64(0x3, 0xffffc600) = 0 mmap2(NULL, 447840, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x55 679000 mmap2(0x556d6000, 65536, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|M AP_DENYWRITE, 3, 0x5c) = 0x556d6000 mmap2(0x556e6000, 1376, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MA P_ANONYMOUS, -1, 0) = 0x556e6000 close(3) = 0 open("/usr/lib/tls/libstdc++.so.6", O_RDONLY) = -1 ENOENT (No such file or direc tory) open("/usr/lib/libstdc++.so.6", O_RDONLY) = -1 ENOENT (No such file or directory ) open("/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/32/libstdc++.so.6", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300\265"..., 512) = 512 fstat64(0x3, 0xffffc5e4) = 0 mmap2(NULL, 842932, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x55 6e7000 mmap2(0x557ab000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRI TE, 3, 0xc4) = 0x557ab000 mmap2(0x557b0000, 19636, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMO US, -1, 0) = 0x557b0000 close(3) = 0 open("/usr/lib/tls/libm.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/lib/libm.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib32/libm.so.6", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0p3\0\000"..., 512) = 512 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x55 7b5000 fstat64(0x3, 0xffffc5c8) = 0 mmap2(NULL, 139424, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x55 7b6000 mmap2(0x557d7000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRIT E, 3, 0x20) = 0x557d7000 close(3) = 0 open("/usr/lib/tls/libgcc_s.so.1", O_RDONLY) = -1 ENOENT (No such file or direct ory) open("/usr/lib/libgcc_s.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/32/libgcc_s.so.1", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\25"..., 512) = 512 fstat64(0x3, 0xffffc5ac) = 0 mmap2(NULL, 33668, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x557 d9000 mmap2(0x557e1000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRIT E, 3, 0x7) = 0x557e1000 close(3) = 0 open("/usr/lib/tls/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/lib/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib32/libc.so.6", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@U\1\000"..., 512) = 512 fstat64(0x3, 0xffffc590) = 0 mmap2(NULL, 1150340, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x5 57e2000 mprotect(0x558f4000, 28036, PROT_NONE) = 0 mmap2(0x558f5000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRI TE, 3, 0x112) = 0x558f5000 mmap2(0x558f9000, 7556, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOU S, -1, 0) = 0x558f9000 close(3) = 0 open("//usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/tls/i686/sse2/libstdc++ .so.5", O_RDONLY) = -1 ENOENT (No such file or directory) stat64(0xffffc3c0, 0xffffc460) = -1 ENOENT (No such file or directory) open("//usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/tls/i686/libstdc++.so.5 ", O_RDONLY) = -1 ENOENT (No such file or directory) stat64(0xffffc3c0, 0xffffc460) = -1 ENOENT (No such file or directory) open("//usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/tls/sse2/libstdc++.so.5 ", O_RDONLY) = -1 ENOENT (No such file or directory) stat64(0xffffc3c0, 0xffffc460) = -1 ENOENT (No such file or directory) open("//usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/tls/libstdc++.so.5", O_ RDONLY) = -1 ENOENT (No such file or directory) stat64(0xffffc3c0, 0xffffc460) = -1 ENOENT (No such file or directory) open("//usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/i686/sse2/libstdc++.so. 5", O_RDONLY) = -1 ENOENT (No such file or directory) stat64(0xffffc3c0, 0xffffc460) = -1 ENOENT (No such file or directory) open("//usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/i686/libstdc++.so.5", O _RDONLY) = -1 ENOENT (No such file or directory) stat64(0xffffc3c0, 0xffffc460) = -1 ENOENT (No such file or directory) open("//usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/sse2/libstdc++.so.5", O _RDONLY) = -1 ENOENT (No such file or directory) stat64(0xffffc3c0, 0xffffc460) = -1 ENOENT (No such file or directory) open("//usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libstdc++.so.5", O_RDON LY) = -1 ENOENT (No such file or directory) stat64(0xffffc3c0, 0xffffc460) = -1 ENOENT (No such file or directory) open("/emul/linux/x86/usr/lib/libstdc++.so.5", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\260"..., 512) = 512 fstat64(0x3, 0xffffc460) = 0 mmap2(NULL, 731264, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x55 8fb000 mmap2(0x559a4000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRI TE, 3, 0xa8) = 0x559a4000 mmap2(0x559a9000, 18560, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMO US, -1, 0) = 0x559a9000 close(3) = 0 open("/lib32/libdl.so.2", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\v\0"..., 512) = 512 fstat64(0x3, 0xffffc444) = 0 mmap2(NULL, 12392, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x559 ae000 mmap2(0x559b0000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRIT E, 3, 0x1) = 0x559b0000 close(3) = 0 open("/emul/linux/x86/usr/lib/libasound.so.2", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\335"..., 512) = 512 fstat64(0x3, 0xffffc428) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x55 9b2000 mmap2(NULL, 720416, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x55 9b3000 mmap2(0x55a5f000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRI TE, 3, 0xac) = 0x55a5f000 close(3) = 0 open("/emul/linux/x86/usr/lib/libX11.so.6", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\24"..., 512) = 512 fstat64(0x3, 0xffffc40c) = 0 mmap2(NULL, 826584, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x55 a63000 mmap2(0x55b29000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRI TE, 3, 0xc5) = 0x55b29000 close(3) = 0 open("/emul/linux/x86/usr/lib/libXext.so.6", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\'\0\000"..., 512) = 5 12 fstat64(0x3, 0xffffc3f0) = 0 mmap2(NULL, 55636, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x55b 2d000 mmap2(0x55b3a000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRIT E, 3, 0xc) = 0x55b3a000 close(3) = 0 open("/usr/lib32/opengl/nvidia/lib/libGLcore.so.1", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\267\n"..., 512) = 512 fstat64(0x3, 0xffffc234) = 0 mmap2(NULL, 7276776, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x5 5b3b000 mmap2(0x561fc000, 114688, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWR ITE, 3, 0x6c0) = 0x561fc000 mmap2(0x56218000, 80104, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMO US, -1, 0) = 0x56218000 close(3) = 0 open("/usr/lib/tls/libnvidia-tls.so.1", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20\3\0"..., 512) = 512 lseek(3, 980, SEEK_SET) = 980 read(3, "\4\0\0\0\20\0\0\0\1\0\0\0GNU\0\0\0\0\0\2\0\0\0\3\0\0\0"..., 32) = 32 fstat64(0x3, 0xffffc218) = 0 mmap2(NULL, 5268, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x5622 c000 mmap2(0x5622d000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRIT E, 3, 0) = 0x5622d000 close(3) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x56 22e000 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x56 22f000 mprotect(0x5622c000, 4096, PROT_READ|PROT_WRITE) = 0 mprotect(0x5622c000, 4096, PROT_READ|PROT_EXEC) = 0 mprotect(0x55b3b000, 7081984, PROT_READ|PROT_WRITE) = 0 mprotect(0x55b3b000, 7081984, PROT_READ|PROT_EXEC) = 0 mprotect(0x558f5000, 4096, PROT_READ) = 0 mprotect(0x55679000, 380928, PROT_READ|PROT_WRITE) = 0 mprotect(0x55679000, 380928, PROT_READ|PROT_EXEC) = 0 mprotect(0x5559d000, 331776, PROT_READ|PROT_WRITE) = 0 mprotect(0x5559d000, 331776, PROT_READ|PROT_EXEC) = 0 set_thread_area(0xffffccc8) = 0 munmap(0x5556c000, 132270) = 0 getpid() = 6018 rt_sigaction(SIGRTMIN, {0x555ff290, [], SA_RESTORER|SA_RESTART|SA_NOMASK|0x17b55 70, (nil)}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {0x555ff3e0, [], SA_RESTORER|SA_RESTART|SA_NOMASK|0x17b557 0, (nil)}, NULL, 8) = 0 rt_sigaction(SIGRT_2, {0x555ff5c0, [], SA_RESTORER|SA_RESTART|SA_NOMASK|0x17b5570, (nil)}, NULL, 8) = 0 rt_sigprocmask(SIG_BLOCK, [RTMIN], NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RT_1], NULL, 8) = 0 Bus error And there you have it. -Omniscientist
Please state what versions of emul-linux-x86-soundlibs and emul-linux-x86-sdl you're using. It certainly works here with the -2.1 versions. Nwn uses it's own sdl lib as you say, this is also built without alsa support afaik so that could have something to do with it.
Hello, I have tried both version 2.1 and 1.0 for the soundlibs and sdl.
Ok I got an update on this: I was running an strace zsnes and loaded up a game. Before I ran this strace, I switched off all the sound options. Then I went into the sound menu while the game was running and turned them back on...lo and behold the sound worked. Amazed at this, I tried to recreate it by switching off all the sound again, rebooting into it and turning it back on. However every single time I have done this my computer has frozen (X froze complete, shift backspace, ctrl-alt-delete, none of them do anything. i even tried to SSH in, but i was unable to connect to my ssh server) Here is the error from .xsession-errors: ------ ZSNES is written by the ZSNES Team (See AUTHORS.TXT) ZSNES comes with ABSOLUTELY NO WARRANTY. This is free software, ^Mand you are welcome to redistribute it under certain conditions; ^Mplease read 'LICENSE' thoroughly before doing so. ^MUse ZSNES -? for command line definitions. MMX support found and enabled. Device 0 /dev/input/js0 2 axis, 2 buttons, 0 hats, 0 balls Device 1 /dev/input/js1 2 axis, 2 buttons, 0 hats, 0 balls X Error: BadWindow (invalid Window parameter) 3 Major opcode: 20 Minor opcode: 0 Resource id: 0x40000e X Error: BadWindow (invalid Window parameter) 3 Major opcode: 20 Minor opcode: 0 Resource id: 0x40000e ----- Maybe zsnes just isn't stable enough for amd64 yet, even with gcc +multilib.
This bug has been fixed. This is the reason why there was no sound: Sound Buffering and Disable SPC Emulation were enabled in the Sound menu in ZSNES. When I switched these off and restarted ZSNES, the sound worked. If I can remember correctly. For my user, these were set by default ( no idea why ), but for other users they aren't. So Sound Buffering and Disable SPC Emulation prevent the sound from working on x86_64 zsnes 1.42 compiled outside of a chroot with gcc +multilib. That's all folks!