这几天快被弄疯了:Ubuntu 里面有 3 个 Python,2.7、3.4 和 3.5。2.7 和 2.4 是 Ubuntu 自带的,3.5 是拿 apt 安装的 “python3-dev”。然后呢,我需要安装几个包:django,numpy,scipy,scikit-learn,scikit-image,dlib,OpenCV。
本来一切东西都使用 apt 进行安装的,超级方便啊~但是 Ubuntu 源里面带的东西都比较老,许多包都要落后 pip 好几个版本,甚至落后一个大版本。
谁会注意到这个啊!
最先发现的是 django,不支持 uuid_field
,但是 doc 上面明明写的支持。一看,落后了大约 3 个版本。
发现问题,就解决呗: pip install XXX -U
,呼呼拉拉升级了一大堆,呼呼拉拉又安装了一大堆。恩,现在的版本几乎都是最新的了。
然后!问题来了:Python3 系列的包全部都乱掉了!什么意思呢?有些包被安装到了 3.4 上,有些包被安装到了 3.5 上,并且两边的包还不能共享。我还不能控制哪些去 3.4,哪些去 3.5。
这可怎么办?在不想重装系统的情况下,只好按照 scikit-learn 的 “官方推荐”,安装了个 Conda。
这下可好,系统里面又多出来了一个 3.5.1。啥?这是啥?问我啊?我那知道啊!现在是 4 个 Python 同时跑啊!Python 你的多版本共存能力真的这么好么!
话说 Conda 的包管理器真方便,除了速度慢点(没找到国内源),其他真好用。科学计算包啊什么的几乎不用操心,慢慢吞吞就好了。
本以为到这里为止了,却再生波折:Django 里面不能连 MySQL 数据库。安装了好几个和 SQL 相关的包都不起作用;OpenCV 的 cv2 也不能用。好几天问题都没有解决。
买了 SSD,装了 Ubuntu14.04。干净系统可以随意折腾。这回,所有东西尽可能使用 pip3 安装。一切正常,只是有时候需要手动解决一点依赖。
但是你能告诉我 cmake2.8 找不到 Python3.4 是为啥么!最高只支持到 Python3.3!欲哭无泪……本以为升级一下 cmake 就好了,拿 ppa 升级了 cmake,却报 “找不到 BUILD_HOME”。这次终于没心情解决此问题了,反正新系统嘛,就推掉重装了 Ubuntu 15.10。
再次重新 pip,重新编译,这下解决了。剩下的,就是把 JDK 安上,开始干活。
耽误好几天,真心伤不起。更伤不起的,是住的地方没网,手机开热点给电脑升级。
别理我,我想静静。
我只想安安静静做个毕设而已。
发表回复