Mac OSX,Python 2.7.9 | Anaconda 2.2.0(x86_64)|。我正在尝试安装一个名为foo的python模块。我跑
python setup.py install
我得到了
running install
running build
running build_ext
running install_lib
running install_egg_info
Removing /Users/jir955/anaconda/lib/python2.7/site-packages/kenlm-0.0.0-py2.7.egg-info
Writing /Users/jir955/anaconda/lib/python2.7/site-packages/kenlm-0.0.0-py2.7.egg-info
然而,在
之后import foo
我收到错误
Traceback (most recent call last): File "<stdin>",
line 1, in <module> ImportError: foo.so, 2):
Symbol not found: __ZTINSt8ios_base7failureB5cxx11E
Referenced from: foo.so Expected in: dynamic lookup
当我尝试使用gcc而不是clang编译某些内容时,发生了错误。 (在某些时候,我出于某种原因自己下载了gcc,但后来我推出了卸载的gcc。)我通过添加-toolset = clang来避免错误。
我尝试过添加
os.environ["CC"] = "/usr/bin/clang"
os.environ["CXX"] = "/usr/bin/clang"
到setup.py,还修改bashrc以包含
export CC=/usr/bin/clang
export CXX=/usr/bin/clang++
但这些事情都没有奏效。我跟谈过的一个人提出问题是我使用gcc而不是clang编译python库,但如果是这种情况我不知道如何解决这个问题。
编辑:
nm foo.so
我得到的摘录是
0000000000072a60 S __ZTIN4util9ExceptionE
U __ZTINSt8ios_base7failureB5cxx11E
U __ZTISt11range_error