Code: Select all
warwick@cardinal:~/darwinia/darwinia$ SDL_AUDIODRIVER=alsa ./darwinia 2>&1 | less
Creating ResourceManager: 0.9
Creating SoundSystem: 1.7
Creating ClientToServer: 1.7
Initialising SoundSystem : 1.9
ALSA lib dlmisc.c:97:(snd_dlsym_verify) unable to verify version for symbol snd_config_hook_load
ALSA lib conf.c:2285:(snd_config_hooks_call) symbol snd_config_hook_load is not defined inside (null)
ALSA lib conf.c:2671:(snd_config_update) hooks failed, removing configuration
Failed to open audio output device: "No available audio device"
Error while reading shared library symbols:
Can't attach LWP 1124: No such process
Couldn't get registers: No such process.
Couldn't get registers: No such process.
Can't detach LWP 1124: No such process
Can't detach LWP 1124: No such process
Can't detach LWP 1124: No such process
Can't detach LWP 1124: No such process
Can't detach LWP 1124: No such process
This last line repeats forever, hence the | less, to get the stuff at the start.
It's also a little fiddly to kill.
I think it also left these in /tmp:
Code: Select all
$ cat /tmp/darwinia.gdb
file /home/warwick/darwinia/darwinia/lib/darwinia.bin.x86
attach 1122
info threads
thread apply all bt
quit
Code: Select all
$ cat /tmp/darwinia.stacktrace
GNU gdb 2002-04-01-cvs
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-linux".
(gdb) Reading symbols from /home/warwick/darwinia/darwinia/lib/darwinia.bin.x86...
(no debugging symbols found)...done.
(gdb) Attaching to program: /home/warwick/darwinia/darwinia/lib/darwinia.bin.x86, process 1122
Reading symbols from /home/warwick/darwinia/darwinia/lib/../lib/libSDL-1.2.so.0...done.
Loaded symbols for /home/warwick/darwinia/darwinia/lib/../lib/libSDL-1.2.so.0
Reading symbols from /usr/lib/libGL.so.1...done.
Loaded symbols for /usr/lib/libGL.so.1
Reading symbols from /usr/X11R6/lib/libGLU.so.1...done.
Loaded symbols for /usr/X11R6/lib/libGLU.so.1
Reading symbols from /home/warwick/darwinia/darwinia/lib/../lib/libvorbisfile.so.3...done.
Loaded symbols for /home/warwick/darwinia/darwinia/lib/../lib/libvorbisfile.so.3
Reading symbols from /usr/lib/libstdc++.so.5...done.
Loaded symbols for /usr/lib/libstdc++.so.5
Reading symbols from /lib/libm.so.6...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /home/warwick/darwinia/darwinia/lib/../lib/libgcc_s.so.1...done.
Loaded symbols for /home/warwick/darwinia/darwinia/lib/../lib/libgcc_s.so.1
Reading symbols from /lib/libc.so.6...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/libpthread.so.0...done.
[New Thread 1024 (LWP 1124)]
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /usr/X11R6/lib/libX11.so.6...done.
Loaded symbols for /usr/X11R6/lib/libX11.so.6
Reading symbols from /usr/X11R6/lib/libXext.so.6...done.
Loaded symbols for /usr/X11R6/lib/libXext.so.6
Reading symbols from /usr/lib/libGLcore.so.1...done.
Loaded symbols for /usr/lib/libGLcore.so.1
Reading symbols from /usr/lib/libstdc++-libc6.2-2.so.3...done.
Loaded symbols for /usr/lib/libstdc++-libc6.2-2.so.3
Reading symbols from /home/warwick/darwinia/darwinia/lib/../lib/../lib/libvorbis.so.0...done.
Loaded symbols for /home/warwick/darwinia/darwinia/lib/../lib/../lib/libvorbis.so.0
Reading symbols from /home/warwick/darwinia/darwinia/lib/../lib/../lib/libogg.so.0...done.
Loaded symbols for /home/warwick/darwinia/darwinia/lib/../lib/../lib/libogg.so.0
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /lib/libnss_compat.so.2...done.
Loaded symbols for /lib/libnss_compat.so.2
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
0x40326a59 in wait4 () from /lib/libc.so.6
(gdb) 1 Thread 1024 (LWP 1124) (gdb)
Thread 1 (Thread 1024 (LWP 1124)):
(gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb) (gdb)
When I ran this under strace, I got this:
Code: Select all
warwick@cardinal:~/darwinia/darwinia$ SDL_AUDIODRIVER=alsa strace -o /tmp/darwinia.strace -ff ./darwinia 2>&1 | less
Process 1637 attached
Process 1637 detached
Process 1638 attached
Process 1636 suspended
Creating ResourceManager: 0.7
Creating SoundSystem: 1.7
Creating ClientToServer: 1.7
Initialising SoundSystem : 1.9
ALSA lib dlmisc.c:97:(snd_dlsym_verify) unable to verify version for symbol snd_config_hook_load
ALSA lib conf.c:2285:(snd_config_hooks_call) symbol snd_config_hook_load is not defined inside (null)
ALSA lib conf.c:2671:(snd_config_update) hooks failed, removing configuration
Failed to open audio output device: "No available audio device"
Process 1641 attached
Process 1638 suspended
Process 1642 attached
Process 1641 suspended
ptrace: Operation not permitted.
No stack.
Process 1641 resumed
Process 1642 detached
Process 1638 resumed
Process 1641 detached
SDL Version: Compiled against 1.2.8, running with 1.2.8
Initialising SDL Audio
Process 1636 resumed
Process 1638 detached
warwick@cardinal:~/darwinia/darwinia$
The strace files are in http://www.baverstock.org.uk/tim/darwin ... inia-2.tgz
The other one, I left up for a minute or so before killing, and it didn't paint anything into its blank black window in that time:
Code: Select all
warwick@cardinal:~/darwinia/darwinia$ SDL_AUDIODRIVER=disk SDL_AUDIOFILE=/dev/null ./darwinia
SDL Version: Compiled against 1.2.8, running with 1.2.8
Creating ResourceManager: 0.5
Creating SoundSystem: 2.2
Creating ClientToServer: 2.2
Initialising SoundSystem : 2.8
Initialising SDL Audio
WARNING: You are using the SDL disk writer audio driver!
Writing to file [sdlaudio.raw].
[1]+ Stopped SDL_AUDIODRIVER=disk SDL_AUDIOFILE=/dev/null ./darwinia
warwick@cardinal:~/darwinia/darwinia$ kill %%
Are these straces useful? Let me know if they're not.
Code: Select all
warwick@cardinal:~/darwinia/darwinia$ SDL_AUDIODRIVER=disk SDL_AUDIOFILE=/dev/null strace -o /tmp/darwinia.strace -ff ./darwinia
Process 1704 attached
Process 1704 detached
Process 1705 attached
Process 1703 suspended
SDL Version: Compiled against 1.2.8, running with 1.2.8
Creating ResourceManager: 0.9
Creating SoundSystem: 2.0
Creating ClientToServer: 2.0
Initialising SoundSystem : 2.1
Initialising SDL Audio
WARNING: You are using the SDL disk writer audio driver!
Writing to file [sdlaudio.raw].
Process 1708 attached
Process 1709 attached
[1]+ Stopped SDL_AUDIODRIVER=disk SDL_AUDIOFILE=/dev/null strace -o /tmp/darwinia.strace -ff ./darwinia
warwick@cardinal:~/darwinia/darwinia$ ps -ef | grep dar
warwick 1702 1092 0 03:38 pts/2 00:00:00 strace -o /tmp/darwinia.strace -ff ./darwinia
warwick 1703 1702 0 03:38 pts/2 00:00:00 /bin/sh ./darwinia
warwick 1705 1703 1 03:38 pts/2 00:00:01 ./lib/darwinia.bin.x86
warwick 1708 1705 0 03:38 pts/2 00:00:00 ./lib/darwinia.bin.x86
warwick 1709 1708 0 03:38 pts/2 00:00:00 ./lib/darwinia.bin.x86
warwick 1737 1092 0 03:39 pts/2 00:00:00 grep dar
warwick@cardinal:~/darwinia/darwinia$ killall ./lib/darwinia.bin.x86
warwick@cardinal:~/darwinia/darwinia$
warwick@cardinal:~/darwinia/darwinia$ ps -ef | grep dar
warwick 1702 1092 0 03:38 pts/2 00:00:00 strace -o /tmp/darwinia.strace -ff ./darwinia
warwick 1703 1702 0 03:38 pts/2 00:00:00 /bin/sh ./darwinia
warwick 1705 1703 0 03:38 pts/2 00:00:01 ./lib/darwinia.bin.x86
warwick 1708 1705 0 03:38 pts/2 00:00:00 ./lib/darwinia.bin.x86
warwick 1709 1708 0 03:38 pts/2 00:00:00 ./lib/darwinia.bin.x86
warwick 1744 1092 0 03:41 pts/2 00:00:00 grep dar
warwick@cardinal:~/darwinia/darwinia$ fg
SDL_AUDIODRIVER=disk SDL_AUDIOFILE=/dev/null strace -o /tmp/darwinia.strace -ff ./darwinia
Process 1703 resumed
Process 1705 detached
Process 1708 suspended
Process 1709 detached
[1]+ Stopped SDL_AUDIODRIVER=disk SDL_AUDIOFILE=/dev/null strace -o /tmp/darwinia.strace -ff ./darwinia
warwick@cardinal:~/darwinia/darwinia$ ps -ef | grep dar
warwick 1702 1092 0 03:38 pts/2 00:00:00 strace -o /tmp/darwinia.strace -ff ./darwinia
warwick 1708 1705 0 03:38 pts/2 00:00:00 ./lib/darwinia.bin.x86
warwick 1705 1 0 03:38 pts/2 00:00:01 ./lib/darwinia.bin.x86
warwick 1709 1708 0 03:38 pts/2 00:00:00 [darwinia.bin.x8 <defunct>]
warwick 1746 1092 0 03:41 pts/2 00:00:00 grep dar
warwick@cardinal:~/darwinia/darwinia$ killall ./lib/darwinia.bin.x86
warwick@cardinal:~/darwinia/darwinia$ fg
SDL_AUDIODRIVER=disk SDL_AUDIOFILE=/dev/null strace -o /tmp/darwinia.strace -ff ./darwinia
[1]+ Stopped SDL_AUDIODRIVER=disk SDL_AUDIOFILE=/dev/null strace -o /tmp/darwinia.strace -ff ./darwinia
warwick@cardinal:~/darwinia/darwinia$ ps -ef | grep dar
warwick 1702 1092 0 03:38 pts/2 00:00:00 strace -o /tmp/darwinia.strace -ff ./darwinia
warwick 1708 1705 0 03:38 pts/2 00:00:00 ./lib/darwinia.bin.x86
warwick 1705 1 0 03:38 pts/2 00:00:01 ./lib/darwinia.bin.x86
warwick@cardinal:~/darwinia/darwinia$ killall ./lib/darwinia.bin.x86
warwick@cardinal:~/darwinia/darwinia$ fg
SDL_AUDIODRIVER=disk SDL_AUDIOFILE=/dev/null strace -o /tmp/darwinia.strace -ff ./darwinia
[1]+ Stopped SDL_AUDIODRIVER=disk SDL_AUDIOFILE=/dev/null strace -o /tmp/darwinia.strace -ff ./darwinia
warwick@cardinal:~/darwinia/darwinia$ ps -ef | grep dar
warwick 1702 1092 0 03:38 pts/2 00:00:00 strace -o /tmp/darwinia.strace -ff ./darwinia
warwick 1708 1705 0 03:38 pts/2 00:00:00 ./lib/darwinia.bin.x86
warwick 1705 1 0 03:38 pts/2 00:00:01 ./lib/darwinia.bin.x86
warwick 1754 1092 0 03:41 pts/2 00:00:00 grep dar
warwick@cardinal:~/darwinia/darwinia$ fg
SDL_AUDIODRIVER=disk SDL_AUDIOFILE=/dev/null strace -o /tmp/darwinia.strace -ff ./darwinia
[1]+ Stopped SDL_AUDIODRIVER=disk SDL_AUDIOFILE=/dev/null strace -o /tmp/darwinia.strace -ff ./darwinia
warwick@cardinal:~/darwinia/darwinia$ killall -9 ./lib/darwinia.bin.x86
warwick@cardinal:~/darwinia/darwinia$
warwick@cardinal:~/darwinia/darwinia$
warwick@cardinal:~/darwinia/darwinia$ fg
SDL_AUDIODRIVER=disk SDL_AUDIOFILE=/dev/null strace -o /tmp/darwinia.strace -ff ./darwinia
Process 1708 detached
warwick@cardinal:~/darwinia/darwinia$
warwick@cardinal:~/darwinia/darwinia$ ps -ef | grep dar
warwick@cardinal:~/darwinia/darwinia$
The strace files are in http://www.baverstock.org.uk/tim/darwin ... inia-3.tgz

