导入模块时出错,dlopen():找不到符号

时间:2010-11-06 23:24:40

标签: python dlopen

我已经在C语言中编写了一个python扩展(实际上,虽然这不是重点),它在Mac OSX中使用了AudioUnit框架。模块构建正确,但是当我尝试从python命令行导入它时,我收到以下错误:

ImportError: dlopen(myproject/audiomodule.so, 2): Symbol not found: _AudioUnitSetProperty
  Referenced from: /Views/python/lib/python3.1/site-packages/myproject/audiomodule.so
  Expected in: dynamic lookup

如何在加载此模块时告诉python它需要使用AudioUnit框架?

1 个答案:

答案 0 :(得分:2)

Bah,正如this answer regarding a similar question中所写,关键是将-frameworkAudioUnit参数作为两个单独的元组项传递。此外,我的平台检测不正确,因此在构建期间没有正确应用这些标志。