起源
上周不小心删掉了Ubuntu18.04LTS自带的Python3.6,环境大乱,于是决定重装一波双系统。
下载镜像,制作启动盘之类的步骤就不说了,重要的依然是自主分区和引导设置。
这次依然是从机械硬盘里分出了50G装Ubuntu,分区大概如下:
挂载点
大小
类型
swap
8G
逻辑分区,交换空间
/boot
1000M
主分区
/
20G
主分区
/home
剩下的
逻辑分区
引导则是选择了sda windows boot manager,因为我的windows装在固态硬盘上(即sda)。
安装好之后,一些基本的设置和以前一样。
每次都会遇到双系统的时差问题,参考CSDN上的一篇讲解(参考链接)。
在Ubuntu终端执行sudo timedatectl set-local-rtc 1即可。
还有在Ubuntu下访问Windows的硬盘,提示“只读文件系统”的问题。(参考链接)。
Python版本问题
然后是Python版本的问题。
Ubuntu18.04LTS自带的是Python3.6,而我想要稍微新一点儿的3.7版本,因为Python支持版本共存,那么直接sudo apt-get install python3.7就行了。
然后是切换默认的python版本,即修改软连接,使python直接指向刚刚安装的3.7版本。
参考链接
默认pip指向的问题
最初执行sudo pip install opencv-python报错,找不到命令。按照参考链接处理,依然失败。
于是改用python3 -m pip install --upgrade pip先升级一下系统自带的python3.6的pip,成功。
但是执行python -m pip install --upgrade pip失败,说明python3.7没装pip,正常情况下,应该是随着python的安装而安装的……
参考链接
sudo apt install python3.7
sudo apt install python3.7-dev
sudo apt install python3.7-venv
按照教程,最后执行了sudo python3.7 get-pip.py,python3.7下的pip才算弄好了。
与此同时,惊奇地发现,sudo pip命令也可以用了。
接下来就是处理pip和pip3的指向。
参考链接
opencv的安装
这里有很多方法。因为我在python环境下使用opencv,所以就不选择完整包安装了。在opencv的官方文档(链接)中,建议使用apt-get安装OpenCV-Python,但是我摸到Ubuntu软件包的页面(链接),发现opencv的版本为3.2.0,而最新的opencv已经来到了4.1.0(虽然使用还不广泛)。
经过一番搜索,发现了可以使用pip安装Unofficial pre-built OpenCV packages for Python,即PyPI上已经有了python环境的opencv包(链接),并且是最新的4.1.0版本,尽管非官方,但是可靠性极高。
最后决定用pip安装,sudo pip install opencv-contrib-python搞定。
得到在python3.7环境下的opencv库,测试,没问题,把封面交了。
python版本很多,opencv版本也很多,还好可移植性都不错,短期内应该不用再折腾了。