The latest revision (just committed r94) compiles fine, but doesn't run for me on Linux. As soon as I try and run it, it segfaults. GDB isn't of any help (it doesn't even get to main()), neither is strace (although I can't really work with the latter). Through test with an older copy (that still works), I found out that x11.cpp seems to be the one at fault, but I have no clue as to why this is the case.
Between those two builds, quite a few changes were made on my system: GCC was updated from 4.2.1 to 4.3.2, I got a new Xorg server (1.5 instead of 1.3), mesa was updated, the proprietary nVidia drivers I'm using were updated, stuff like that.
Bisqwit's snes9x from the MakingAVI site still compiles fine and works, same for the latest SVN revision of snes9x-1.51.
If anyone has any idea or patches, I'd really appreciate it.
gdb output
strace output
/edit: After some more tests, it turns out that gcc is screwing me over. Compiling unix/x11.cpp with with gcc 4.1.2 doesn't result in segfault and runs perfectly fine, while compiling the very same file with the very same parameters with gcc 4.3.1 makes it segfault. What I also found to be really weird is the size difference: x11.o is ~264KB with 4.1.2, yet only ~126KB with 4.3.2.