8

MacOSX Yosemite に PyFTGL をインストールしようとしています。

私が使用している python バージョンは、macports の 2.7 です。+python27 を指定して macports からブーストをインストールしました。

PyFTGL をインストールするには、ソースからビルドし、次の setup.py ファイルを編集しました。

module_ftgl_libs = [
    'GLU',
    'GL',
    'freetype',
    'z',
    'ftgl',
    'boost_python',
    ]

 module_ftgl = Extension(
    'FTGL',
    module_ftgl_src,
    include_dirs=module_ftgl_include_dirs,
    libraries=module_ftgl_libs
    )

に:

 module_ftgl_libs = [
    'freetype',
    'z',
    'ftgl',
    'boost_python',
    ]

 module_ftgl = Extension(
    'FTGL',
    module_ftgl_src,
    include_dirs=module_ftgl_include_dirs,
    libraries=module_ftgl_libs,
    extra_link_args=['-framework', 'OpenGL', '-framework', 'GLUT']
    )

次に、setup.py ファイルをビルドし、結果の FTGL.so ファイルを、FTGL 関数を使用する Python コード test.py と同じフォルダーにコピーします。

私の問題は、コードを実行すると次のエラーが発生することです。

Traceback (most recent call last):
  File "test.py", line 29, in <module>
    import FTGL
ImportError: dlopen(/Users/james/Desktop/test/FTGL.so, 2): Symbol not found:__ZN5boost6python7objects15function_objectERKNS1_11py_functionERKNSt3__14pairIPNS0_6detail7keywordESA_EE
  Referenced from: /Users/james/Desktop/test/FTGL.so
  Expected in: flat namespace
 in /Users/james/Desktop/test/FTGL.so

リンク、setup.py ファイル、ブーストについてはよくわかりません。Google と Stack Overflow の両方で長い間調査してきましたが、今は問題がわかりません。

4

2 に答える 2