[CM] snd on osx, success

Josh Mattoon matt7595@uidaho.edu
Sun, 07 Dec 2003 13:34:12 -0800

Hi there,

(Forgive me if this has been said before, but I didn't find anything
like this searching around on the internet.  I wanted to share my
information with anyone else thinking about installing snd on osx, but
are too lazy, like myself, to install all the requirements by hand)

After recently upgrading to the new version of osx (10.3) I decided to
give snd a shot.  I downloaded the snd-7 tarball, read the
requirements, but was a bit put off by how much work it seemed to
entail.  I'm not a big fan of downloading and compiling random
libraries, etc, so I fired up fink, updated it to the cvs version, and
began to "fink list xxx".  It turns out everything required for snd is
now in fink!  Unfortunatly I wasn't keeping track of everything that I
installed, but from memory I installed:

sudo fink install openmotif3 fftw guile guile-dev 

But I'd imagine that there was more to it than that.  I'm not in the
mood to rebuild fink in order to find out ;-)

So... after a loooong compilation process (fftw required g77) I had
everything in place.  But ./configure couldn't find them, d'oh.  My
simple solution was to pass in the CFLAGS and LDFLAGS as so:

CFLAGS=-I/sw/include LDFLAGS="-L/sw/lib -lmx -bind_at_load" ./configure \ 
     --with-gl --with-editres --with-static-xm --with-guile

This was after a bit of trial and error.  The linker couldn't find
some symbols that turned out to be in libmx, so I added that, and the
linker also suggested the bind_at_load (though I'm not totally sure
what that means).

I added some of the extra arguments to configure later (I was trying
to use the Dave Phillips customizations, I've got questions about that
later on) and I'd reckon that I'll change these as time goes on.  I'm
not convinced that OpenGL is working, ./snd --help says it is, but
unless something has changed in 10.3, OpenGL needs to be included as a
framework, not as -lGLU like it is in the makefile.  Other than that,
my limited testing seems to show that snd is working correctly.  I can
record and play back, and it hasn't crashed.  When using the help
system, it was trying to open the html docs with mozilla, which I
don't have.  I'd imagine that there was a variable somewhere that I
can set to change this behavior, but to make things easy on myself, I
played a dirty OSX trick and did this:

sudo ln -s /usr/bin/open /usr/bin/mozilla

open knows what to do with various files types, and now "mozilla"
sends those html files to my default browser (safari).


Okay, on to the customizations.  I've spent a bit of trying to get the
Dave Phillips "misc.scm" file to load.  Unfortunatly snd isn't too
helpful in pointing out what is wrong.  Well, I take that back.  It
did tell me that I needed xm.so loaded, and I couldn't get it to build
by hand (I was trying to "make xm" and that failed to find some
symbols).  Eventually I found --with-static-xm and that made the
problem go away.  After that, I only get the error:

(yarg, any osx folk know how to copy and paste from X11 to quartz?)

[13:20:43] "Syntax error in fixed argument declaration."
; (load ~/.snd)
(while loading "/Users/josh/.snd")

There is no line number or expression to point me in the right way.
My .snd basically just loads the misc.scm file.  If I comment out that
line, it starts up fine.  I'd imagine that the error is happening
*somewhere* in misc.scm, but I'm not about to figure that out without
a little direction.

Is there a way to debug this?  I'd be interested to see what the
customizations hold.  I'm not afraid of doing things via keys, but it
would be nice to get a feel for what is possible just by poking at
some menus.