1、我的系统是ubantu16.04版本。
2、我是在安装setuptools的时候,运行python setup.py install出现的。
3、具体代码间下面:
XXXXX@XXXXXX:~/requests/setuptools-0.6c11$ python setup.py install
running install
Traceback (most recent call last):
File "setup.py", line 94, in <module>
scripts = scripts,
File "/usr/local/lib/python2.7/distutils/core.py", line 152, in setup
dist.run_commands()
File "/usr/local/lib/python2.7/distutils/dist.py", line 953, in run_commands
self.run_command(cmd)
File "/usr/local/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/home/sprint/requests/setuptools-0.6c11/setuptools/command/install.py", line 76, in run
self.do_egg_install()
File "/home/sprint/requests/setuptools-0.6c11/setuptools/command/install.py", line 85, in do_egg_install
easy_install = self.distribution.get_command_class('easy_install')
File "/home/sprint/requests/setuptools-0.6c11/setuptools/dist.py", line 395, in get_command_class
self.cmdclass[command] = cmdclass = ep.load()
File "/home/sprint/requests/setuptools-0.6c11/pkg_resources.py", line 1954, in load
entry = __import__(self.module_name, globals(),globals(), ['__name__'])
File "/home/sprint/requests/setuptools-0.6c11/setuptools/command/easy_install.py", line 12, in <module>
import sys, os.path, zipimport, shutil, tempfile, zipfile, re, stat, random
File "/usr/local/lib/python2.7/tempfile.py", line 32, in <module>
import io as _io
File "/usr/local/lib/python2.7/io.py", line 51, in <module>
import _io
ImportError: /usr/local/lib/python2.7/lib-dynload/_io.so: undefined symbol: _PyErr_ReplaceException
你的系统中应该还有其他版本的Python存在,导致_io.so在错误的libpython.so中找不到对应的符号。
建议将自己特定版本的Python安装在HOME目录或/opt等目录,并且不加入PATH中以免影响系统自带Python的工作(很多系统工具会依赖系统自带的Python)。然后使用Virtualenv指定使用你需要的Python版本。