如何在Mac OSX上使用distutils使用python C ++扩展编译OpenGL?

时间:2010-05-02 18:21:36

标签: c++ python macos opengl distutils

当我尝试时,我得到:

  

ImportError:dlopen(/ Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/cscalelib.so,2):找不到符号:_glBindFramebufferEXT     参考自:/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/cscalelib.so     期望:动态查找

我在setup.py文件中尝试了各种各样的东西。我真的需要把它放到哪里才能正确链接到OpenGL?我的代码编译得很好,所以没有必要把它放在那里。这是setup.py

from distutils.core import setup, Extension

module1 = Extension('cscalelib',
              extra_compile_args = ["-framework OpenGL", "-lm", "-lGL", "-lGLU"],
                    sources = ['cscalelib.cpp'])

setup (name = 'cscalelib',
       version = '0.1',
       description = 'Test for setup_framebuffer',
       ext_modules = [module1])

1 个答案:

答案 0 :(得分:3)

我没有意识到我必须删除构建目录。现在它正确导入。

对于需要了解您需要的任何人:extra_link_args=['-framework', 'OpenGL']删除构建目录并再次尝试。它会工作。