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
[email protected]
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
_______________________________________________
Cmdist mailing list
[email protected]
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist