这个问题是关于我的特殊问题(我找到了一个解决方法,所以它不是一个紧迫的问题)的问题,也是关于我正在使用的一般过程的问题。
设置(工作部分):
我在我的Ubuntu 14.04上本地安装了Python 2.7.9,还有一个运行它的virtualenv。一切都与“系统”Python有很大的区别,我没有接触到它。
我做的部分:
一切都开始得很好,安装了Python,运行了所有库。例如,我还pip安装了numpy 1.10.1,它编译了一段时间,然后工作得很好。
问题是:
问题是,由于无法控制的原因,我不得不重新构建启用了ucs4的python,即我使用./configure --enable-unicode=ucs4
完成此操作后,我还卸载了所有库,并使用pip重新安装它们。但是,似乎没有正确卸载numpy库,因为这次它是立即安装的,当我试图将numpy导入到我的新Python中时,我收到一条错误消息,指示该numpy是使用启用ucs2的Python编译的。
这个假设是非常可靠的,因为我当时试图pip install numpy==1.9.3。安装再次花费了很长时间,它产生了一个numpy版本,可以在新的ucs4启用Python上工作。
现在,我的问题是:How can I get the numpy uninstallation process to delete all traces of the old numpy?
编辑:
我还试图通过从virtualenvsite-packages目录中删除numpy来手动删除它。删除后,import numpy按预期返回了ImportError。然后我重新安装了它(pip install numpy),它返回时出现了与ucs2相关的错误。
编辑2:
我的virtualenv Python看到的完整的sys.path['',
'/home/jkralj/.virtualenvs/work/lib/python27.zip',
'/home/jkralj/.virtualenvs/work/lib/python2.7',
'/home/jkralj/.virtualenvs/work/lib/python2.7/plat-linux2',
'/home/jkralj/.virtualenvs/work/lib/python2.7/lib-tk',
'/home/jkralj/.virtualenvs/work/lib/python2.7/lib-old',
'/home/jkralj/.virtualenvs/work/lib/python2.7/lib-dynload',
'/usr/local/lib/python2.7.9/lib/python2.7',
'/usr/local/lib/python2.7.9/lib/python2.7/plat-linux2',
'/usr/local/lib/python2.7.9/lib/python2.7/lib-tk',
'/home/jkralj/.virtualenvs/work/lib/python2.7/site-packages']
另外,可能需要指出的是,python的/usr/local/lib/python2.7.9/安装没有安装numpy。