xubuntu 下使用 pip 安装模块后不能用

2015-09-28 23:31:25 +08:00
 oska874

系统是 xubuntu 14.04 ,自带 python 2.7.6 ,然后自己编译安装了 2.7.10 ,现在使用 pip 安装第三方模块( pytftpdlib 和 numpy ),安装时使用 sudo (不然提示权限不足),安装好之后,在 /usr/local/lib/python2.7/下也可以找到新安装的模块文件,但是在代码里面引用模块时却提示找不到模块,开始怀疑时用户权限不足,所以就 su 到 root ,再执行,还是一样的错误,用 python 3.4 执行也是一样的效果。
这个是什么原因啊,怎么破?

2313 次点击
所在节点    Linux
13 条回复
msg7086
2015-09-29 05:27:11 +08:00
自带 + 编译安装 ≈ 依赖地狱
firemiles
2015-09-29 10:02:18 +08:00
用的是 python2.7.6 的 pip 还是 2.7.10 的 pip ,不会用错了吧
hujianxin
2015-09-29 10:04:53 +08:00
用 pyenv
oska874
2015-09-29 10:20:16 +08:00
@firemiles 可以确认已经没有 2.7.6 了
@hujianxin 怎么用?
刚才看了下,发现 PYTHONPATH 是空的,强制赋值后就可以用了。但是 python 命令行里面 sys.path 一直是正常的。难道说重新安装 python 之后会清掉 PYTHONPATH ?还是说 PYTHONPATH 本来就是空的
lln133208
2015-09-29 13:48:33 +08:00
多版本 python 共存的话用**pyenv**好些
oska874
2015-09-29 15:26:59 +08:00
@lln133208 现在已经出问题了,该怎么解决?
yaxin
2015-09-29 17:17:49 +08:00
你需要的是这一条```ln -s /usr/local/python27/lib/python2.7/config/libpython2.7.a /usr/lib```

也是就是说,模块编译查找 lib 貌似并不会找到 /usr/local/lib 下面的

http://yaxin-cn.github.io/Python/issue-when-install-python-cffi.html 这个你可以参考一下,但不一定适合你

话说有 2.7.6 为什么还要装 2.7.10 ,难道有什么飞跃性的特性吗?
oska874
2015-09-29 21:39:45 +08:00
@yaxin 话说你给的路径我这没的,只有 /usr/local/lib/python2.7/config/
而且我这都是安装成功的,是在 py 里面 import 的时候报的错。
yaxin
2015-09-30 09:45:40 +08:00
@oska874 我都把文件名给你了,你 locate 一下不就行了。
oska874
2015-09-30 10:24:49 +08:00
@yaxin /usr/local/lib/libpython2.7.a 可以找到,但是他是干什么的?和 module 引用有关系吗?
oska874
2015-09-30 10:34:40 +08:00
@msg7086 有什么办法恢复呢?
hsyu53
2015-09-30 22:51:29 +08:00
因为你的 pip 是在 Python 2.7.10 之前安装的。我跟你遇到过一样的问题,用的笨办法: 重新安装 pip ,再用新的 pip 重新安装需要的 package
oska874
2015-10-01 01:32:36 +08:00
@hsyu53 没用。
没办法了,只能用 so 上有人提供的办法,安装了 anaconda ,然后吧默认 python 改成了 anaconda 带的,问题就解决了,但是看到 anaconda 的 python 是用 gcc 4.4.7 编译的,又有些强迫症了。
现在就用 conda 和 pip 来做虚拟环境和安装软件了,看着还行。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/224380

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX