python没有导入模块也许gcc被用来编译python库而不是clang?

2024-09-30 08:29:06 发布

您现在位置:Python中文网/ 问答频道 /正文

这里是MacOSX,Python 2.7.9 |Python2.2.0(x86_64)|。我试图安装一个python模块,比如说foo。我跑

python setup.py install

我明白了

^{pr2}$

但是,之后

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,但后来我brew卸载了gcc。)我通过添加-toolset=clang来避免错误。在

我试着增加

 os.environ["CC"] = "/usr/bin/clang"
 os.environ["CXX"] = "/usr/bin/clang"

到设置.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

Tags: inpybinsofooosusr错误

热门问题