Rasbian系统 树莓派Python环境搭建
换源
nano 是Rasbian自带的一款轻量级的文本编辑器,这里也可以用其它文本编辑器替代。
将raspi.list 和 sources.list 里的所有内容用 ‘#’ 注释掉,并添加以下内容
sudo nano /etc/apt/sources.list.d/raspi.list
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
——
sudo nano /etc/apt/sources.list
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib
当然也可以去找其它的国内镜像网站
但是有些源里可能找不到要下载的包
更新 apt-get
sudo apt-get update
sudo apt-get upgrade
准备SSL等
sudo apt-get install libssl-dev openssl
sudo apt-get install libffi-dev
需要下载两个文件:
-
Python-3.8.7.tgz
https://www.python.org/ftp/python/3.8.7/Python-3.8.7.tgz -
setuptools-19.6.tar.gz //这个版本的setuptool太低了,跟python3.8不兼容
所以下载 setuptools-58.4.0https://files.pythonhosted.org/packages/a8/50/76fb9cfe521b531feecd932ab920cd6e32f6838527af7b34ef78d5f39a18/setuptools-58.4.0-py3-none-any.whl
解压、编译、安装、创建软连接、更新
将文件解压出来
得到 Python-3.8.7 文件夹
tar -xzvf Python-3.8.7.tgz
可以随手把存放目录先创建好,这里的目录可自行选择
sudo mkdir /usr/local/python3.8
切到Python-3.8.7文件夹下,执行文件夹里的config文件
prefix后面是安装路径,可以自行选择
sudo ./configure --enable-optimizations --prefix=/usr/local/python3.8 --with-ssl
接着进行编译和安装
在Python-3.8.7文件夹下依次执行下面的命令
sudo make
sudo make install
可以删除临时文件
sudo make clean
建立软链接,这里的路径跟 ./config 那一步的路径有关,视具体情况处理
/usr/bin 里面是全局的命令 可以用 ls -al 详细查看
sudo ln -s /usr/local/python3.8/bin/python3.8 /usr/bin/python3.8
sudo ln -s /usr/local/python3.8/bin/pip3.8 /usr/bin/pip3.8
检验安装结果,查看一下版本号
这里的"python3.8" 和 “pip3.8” 由上一步建立的软连接名称决定
python3.8 -V
pip3.8 -V
切换到有 setuptools-58.4.0-py3-none-any.whl 文件夹下执行
pip3.8 install setuptools-58.4.0-py3-none-any.whl
更新 pip 等
pip3.8 install --upgrade pip
pip3.8 install --upgrade setuptools
安装特定版本的库
pip install <软件名>==<版本号> 如
pip3.8 install numpy==1.19.4
批量安装库
建立一个文件用来存放需要安装的库,如
setuptools
numpy
pandas
scipy
matplotlib
pyserial
scikit_learn
opencv-python
然后执行(requirements.txt是保存上面内容的文件名)
pip3.8 install -r ./requirements.txt
ModuleNotFoundError: No module named ‘_ctypes’
可以参考 https://blog.csdn.net/qq_42353939/article/details/94609591
安装 matplotlib 可能会用到
pip3.8 install pyinstaller
pip3.8 install wheel
sudo apt-get install libjpeg-devel
sudo apt-get install liblapack-dev
sudo apt-get install qt5-default qtcreator
安装 scipy 可能会用到
sudo apt-get install libblas-dev
sudo apt-get install liblapack-dev
sudo apt-get install gfortran
sudo apt-get install python-scipy
sudo apt-get install gcc gfortran
sudo apt-get install python3-dev
sudo apt-get install libopenblas-dev
sudo apt-get install liblapack-dev
sudo apt-get install cython3
sudo apt-get install libfreetype6-dev
sudo apt-get install pybind11
也可参考 https://blog.csdn.net/weixin_39550816/article/details/108533140
module ‘serial’ has no attribute ‘Serial’
卸载 serial、pyserial,并重新安装pyserial
pip3.8 uninstall serial
pip3.8 uninstall pyserial
pip3.8 install pyserial
虚拟环境创建
安装虚拟环境
pip3.8 install virtualenv
进入python的工程文件,并创建虚拟环境此处 venv 是虚拟环境的名称,后同,可以自定义
virtualenv -p python3 venv
激活虚拟环境,此处的 venv 是虚拟环境的名称。成功激活后会看见用户名前多了一个(venv)。此时再运行python程序时就是在虚拟环境中运行的了
source ./venv/bin/activate
此时可以执行以下命令查看虚拟环境中已导入的包和向虚拟环境中导入需要的包
pip3.8 list
pip3.8 install <package_name>
关闭虚拟环境
deactivate
virtualenv的官方文档 https://virtualenv.pypa.io/en/latest/index.html