如何在OSX中创建可动态加载的RtAudio版本

时间:2010-11-08 05:40:09

标签: c++ lisp g++ dylib

我需要创建librtaudio.dylib,一个可动态加载的RtAudio库(http://www.music.mcgill.ca/~gary/rtaudio/)。我想编写CFFI绑定(在SBCL中),但我似乎无法编译可以使用CFFI加载的dylib。以下是我用来创建dylib的编译器和链接器命令:

g ++ -O2 -Wall -Iinclude -fPIC -DHAVE_GETTIMEOFDAY -D__MACOSX_CORE__ -c RtAudio.cpp -o RtAudio.o

g ++ -dynamiclib -install_name /usr/local/lib/librtaudio.dylib -lSystem -compatibility_version 1.0 -current_version 1.0 RtAudio.o -o librtaudio.dylib -lpthread -framework CoreAudio -framework CoreFoundation

1 个答案:

答案 0 :(得分:1)

似乎CFFI的C ++支持不足以加载RtAudio,因为它是一个C ++库。解决方法是在RtAudio周围编写一个C包装器,然后将绑定写入包装器。