3 AUTHOR: Randy Hron <rwhron (at) earthlink.net>
6 How to build pth library
10 pth is a portable threading library from GNU. It is an alternative to
17 This is the meat of the hint. Here is what worked for me:
19 /configure --disable-nls --with-mctx-mth=sjlj --with-mctx-dsp=ssjlj --with-mctx-stk=sas
21 --disable-nls is up to you. May not make any difference at all for pth. I use it
22 because I'm happy with the Common locale.
27 make && make test && make install
35 ldd /usr/local/bin/mp3blaster
37 libvorbisfile.so.0 => /usr/local/lib/libvorbisfile.so.0 (0x4001f000)
38 libvorbis.so.0 => /usr/local/lib/libvorbis.so.0 (0x40024000)
39 libncurses.so.5 => /lib/libncurses.so.5 (0x4003a000)
40 libpthread.so.0 => /lib/libpthread.so.0 (0x4007d000)
41 libstdc++-libc6.2-2.so.3 => /usr/lib/libstdc++-libc6.2-2.so.3 (0x40091000)
42 libm.so.6 => /lib/libm.so.6 (0x400dc000)
43 libc.so.6 => /lib/libc.so.6 (0x400ff000)
44 libogg.so.0 => /usr/local/lib/libogg.so.0 (0x40222000)
45 /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
47 root@rushmore:/usr/src/sources/m# ps aux|egrep 'mp3|VSZ'
48 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
49 hrandoz 28961 0.1 0.2 10976 1508 tty5 S 19:09 0:00 mp3blaster
50 hrandoz 28962 0.0 0.2 10976 1508 tty5 S 19:09 0:00 mp3blaster
51 hrandoz 28963 0.0 0.2 10976 1508 tty5 S 19:09 0:00 mp3blaster
53 That's mp3blaster at startup.
57 ps aux|egrep 'mp3|VSZ'
58 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
59 hrandoz 28961 0.0 0.8 46356 4320 tty5 S 19:09 0:00 mp3blaster
60 hrandoz 28962 0.0 0.8 46356 4320 tty5 S 19:09 0:00 mp3blaster
61 hrandoz 28963 3.4 0.8 46356 4320 tty5 S 19:09 0:04 mp3blaster
62 hrandoz 28977 0.3 0.8 46356 4320 tty5 S 19:11 0:00 mp3blaster
65 See how the VSZ got big?
72 /configure --disable-nls --with-pthreads=no --with-pth=yes
75 ldd /usr/local/bin/mp3blaster
77 libvorbisfile.so.0 => /usr/local/lib/libvorbisfile.so.0 (0x4001f000)
78 libvorbis.so.0 => /usr/local/lib/libvorbis.so.0 (0x40024000)
79 libncurses.so.5 => /lib/libncurses.so.5 (0x4003a000)
80 libpth.so.14 => /usr/lib/libpth.so.14 (0x4007d000)
81 libstdc++-libc6.2-2.so.3 => /usr/lib/libstdc++-libc6.2-2.so.3 (0x4008f000)
82 libm.so.6 => /lib/libm.so.6 (0x400da000)
83 libc.so.6 => /lib/libc.so.6 (0x400fd000)
84 libogg.so.0 => /usr/local/lib/libogg.so.0 (0x40220000)
85 /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
88 Before playing anything:
90 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
91 hrandoz 30442 0.0 0.2 2940 1504 tty5 S 19:16 0:00 mp3blaster
94 Note, there is only one thread.
96 After playing a bunch of songs:
98 root@rushmore:/usr/src/sources/m/mp3blaster-3.0# ps aux|egrep 'VSZ|mp3'
99 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
100 hrandoz 30442 4.1 0.3 3004 1744 tty5 S 19:16 0:05 mp3blaster
102 Hey, it's much smaller. :)
105 Note that under extreme load, mp3blaster skips more with pth than
108 Thu Jan 3 00:29:50 EST 2002