[CM] CM, rt, portmidi osx, linux
Rick Taube
taube@uiuc.edu
Wed, 8 Feb 2006 10:07:13 -0600
> Mac:
>
> How do i compile libportmidi.a to a shared library?
portmidi prrovides an xcode project in their tarball, but you will
have to update it for newer xcode versions. i sent one such updated
version to roger last summer but i dont think he has released a newer
portmidi since then.
however, i do provide an already made Mac dylib in the portmidi
tarball on the project page, so you can just move that to /usr/local/
lib and all should be well on the Mac:
http://sourceforge.net/project/showfiles.php?
group_id=9766&package_id=172088
> Linux:
>
> [...]
>
> However,
>
>> (define *pm* (portmidi-open :input 12 :output 11 :latency 0))
>
>> (set-receiver! #'(lambda (mm ms) mm (print ms)) *pm*)
>
> and playing my virtual keyboard here crashes cmucl, and hits an
> error in sbcl.
ok, i dont have this problem, but I do know that cm's error
reporting for portmidi is broken. Nando fixed it last week and ill
check in his fixed sources later today. with that in place you might
get a better sense of what is going wrong
however, there is a bigger issue with portmidi on Linux: it seems you
cannot send more than 255 future messages before portmidi dies with
an alsa errror. Nando has looked into this, i think a fix would
involve hacking portmidi C sources. Im sure Nando has more opinions
on this since he spent time looking into it
but -- given that it is now possible to simply generate CFFI api's
from C headers -- perhaps a better solution is to just generate a
CFFI interface to the Alsa sequencer lib. I cant do this because I
have almost zero time for the next few months, but if such an
interface existed I would certainly help write the CM code to use it.
>
> If someone has this working on a linux machine with portmidi,
> would they be kind enought to post some info about versions of
> lisp/CM/portmidi?
>
> -anders
>
> _______________________________________________
> Cmdist mailing list
> Cmdist@ccrma.stanford.edu
> http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist