0. python安装
python因平台不同而略有不同,linux系统安装较为简单,直接使用命令行安装即可,而windows平台则稍显麻烦,因此,主要说一下windows平台安装python,如果有朋友安装遇到问题,欢迎讨论!
0.1 windows
0.1.1 下载
进入Python版本下载网站,根据自己的需要下载相应的版本
- 下载带有
amd64.exe
后缀的程序,如果没有,尝试下载具有.exe
后缀的版本。 - 本人下载的是3.8版本的程序,其他版本由于更新或者其他原因可能略有不同
0.1.2 安装
双击exe文件,注意一定要选择Add Python version to PATH
,点击Install Now.
0.1.3 测试
win+R
打开cmd后台,键入python
,出现对应的版本号,则安装成功
0.2 Linux 安装
0.2.1 apt源安装
0.2.1.1. 更新安装包列表
sudo apt update
sudo apt install software-properties-common
0.2.1.2 加入ppa
sudo add-apt-repository ppa:deadsnakes/ppa
0.2.1.3 安装python对应版本
sudo apt-get install python3.7
sudo apt-get install python3.7-dev
0.2.1.4. 检查
python3.7 --version
0.2.2 源码安装
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus
sudo apt-get install build-essential libncursesw5-dev libgdbm-dev libc6-dev
sudo apt-get install zlib1g-dev libsqlite3-dev tk-dev
sudo apt-get install libssl-dev openssl
sudo apt-get install libffi-dev
wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tgz
tar -zxvf Python-3.7.1.tgz
cd Python-3.7.1
./configure --prefix=/usr/local/python3.7.1
make
sudo make install
PATH=$PATH:$HOME/bin:/usr/local/python3.7.1/bin
##ls -l /usr/bin | grep python
#rm /usr/bin/python
#ln -s /usr/bin/python3.6 /usr/bin/python
#mv /usr/bin/python /usr/bin/python.bak
#ln -s /usr/local/python3.7.0/bin/python3.7 /usr/bin/python
#mv /usr/bin/pip /usr/bin/pip.bak
#ln -s /usr/local/python3.7.1/bin/pip3 /usr/bin/pip
0.3 安装特定版本的python
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
创建文件夹安装位置
sudo mkdir /usr/local/bin/python3.7
进入下载好文件的位置,然后进行解压文件
sudo tar -zxvf Python-3.7.0.tgz && cd Python-3.7.0/
配置
./configure --prefix=/usr/local/bin/python3.7/
进行编译
sudo make
安装
sudo make install
这样python3.7.0就编译安装好了,如果Ubuntu中以及有python3软连接的,我们先删除(不或者改个名字)
sudo rm /usr/bin/python3
创建软连接
sudo ln -s /usr/local/bin/python3.7/bin/python3.7 /usr/bin/python3
0.4 python切换ubuntu系统Python
参考
1. 集成工具安装
1.1 anaconda
1.1.1 基本操作
1.1.1.1 查看conda环境信息
conda info --envs
1.1.1.2 创建特定python版本的环境
conda create -n env_name python=version
1.1.1.10 更新conda 版本
- 更新
conda conda update -n base -c defaults conda
- 重新加载conda
conda init
- 重新打开终端,可以使用conda新版本
注意:
- 新升级的conda可能带来之前环境的不兼容,因此需要重新建立环境,所有的包都重新安装
1.1.2conda安装cuda环境
1.1.2.1 torch 官网安装
conda install pytorch==1.10.0 torchvision==0.11.0 torchaudio==0.10.0 cudatoolkit=11.3 -c pytorch -c conda-forge
1.1.2.2 搜索对应的cuda、cudnn版本进行安装
使用cuda环境已经编译好的进行安装
- conda 搜索可用的cudatoolkit版本
conda search cudatoolkit -c conda-forge
安装
conda install cudatoolkit==version -c conda-forge
- cudnn离线安装
conda search cudnn -c conda-forge
注意
- 不要使用
conda search cudnn --info
,这样得到的版本信息会少很多
- cudnn安装
conda install cudnn==8.0.5.39 -c conda-forge
1.1.3 tensorrt 引入conda 内的cuda、cudnn环境
# 清楚系统cuda环境
unset LD_LIBRARY_PATH
#引入conda内cuda环境
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/conda/lib/python3.10/site-packages/torch/lib
1.1.2 本机环境克隆
克隆base环境
如果想迁移的是base环境,因此需要先克隆(base环境不能直打包)
conda create -n 新环境的名称 --clone 老环境名称
可能出现的错误
numba
错误
`
SystemError:initialization of internal failed without raising an exception
原因:numpy版本问题
pip install numpy==1.23.5 -i https://pypi.tuna.tsinghua.edu.cn/simple --no-cache-dir
setuptools
AttributeError: module ‘distutils’ has no attribute 'version`
原因:setuptools版本问题”
pip install setuptools==59.5.0 -i https://pypi.tuna.tsinghua.edu.cn/simple --no-cache-dir
1.1.3 使用工具克隆
- conda-pack是打包工具
conda install -c conda-forge conda-pack
- 将环境打包
添加-o
参数,例如将上述环境导出为新环境.tar.gz压缩包conda pack -n 新环境名称 -o 新环境名称.tar.gz
- 文件会默认打包在
C盘:/用户/用户名
的文件夹中
-
将压缩包放到目标主机的同版本Anaconda路径下的envs文件夹内,解压
注意:需要相同版本的Anaconda -
在目标主机上激活环境
conda activate 新环境
1.1.4 删除conda 包
conda remove -n package_name --all
1.2 virtualenv
1.2.5 本机环境克隆
- 安装克隆包
pip install virtualenv-clone
- 移植环境
venv1
tovenv2
virtualenv-clone venv1/ venv2/
1.x 问题
1.X.3 numba
错误一
`
SystemError:initialization of internal failed without raising an exception
原因:numpy版本问题
pip install numpy==1.23.5 -i https://pypi.tuna.tsinghua.edu.cn/simple --no-cache-dir
1.x.2 numba 错误二
ModuleNotFoundError: No module named 'numba.core'
numbas升级
pip install numba==0.53.0 -i https://pypi.tuna.tsinghua.edu.cn/simple --no-cache-dir
1.x.3 six错误
错误描述
cannot import name 'six' from 'pkg_resources.extern'
原因分析:
使用docker时,直接使用系统环境安装mim install mmengine
,导致未正确引入环境变量
解决办法
- 找到python环境变量位置
find /usr name pkg_resources
可能有多个包,需要多次尝试
- 引入环境变量
export PYTHONPATH="/usr/lib/python3/dist-packages
2. 一般库安装
2.1 pip 安装包
参考一
Note:
- 我们调试一个包的时候,可能需要对代码进行
修改
测试。如果不禁用缓存,pip会从缓存中读取之前安装的包,而不会重新安装最新的代码。这会导致我们无法测试我们对包的修改是否生效。
在这种情况下,我们可以使用–no-cache-dir参数,确保pip重新安装最新的包。
pip install mmcv -i https://pypi.tuna.tsinghua.edu.cn/simple --no-cache-dir
其他源
- 中国科学技术大学 :
https://pypi.mirrors.ustc.edu.cn/simple
- 豆瓣:
http://pypi.douban.com/simple/
- 阿里云:
http://mirrors.aliyun.com/pypi/simple/
2.2protobuf 安装
- 安装
pip install protobuf
- 报错
ImportError: No module named google.protobuf
- 解决方法一
此方法有时不管用pip uninstall protobuf pip uninstall google pip install google pip install protobuf
- 解决方法二
参考
此方法基本管用.应该是google-ads
把所有的库都安装上了。pip install google-ads
2.3 PyQt5使用
报错
bash Got keys from plugin meta data ("xcb") QFactoryLoader::QFactoryLoader() checking directory path "/data/xu-lidar/thrid/SurroundOcc/envs/bin/platforms" ... loaded library "/data/xu-lidar/thrid/SurroundOcc/envs/lib/python3.8/site-packages/PyQt5/Qt5/plugins/platforms/libqxcb.so" qt.qpa.xcb: could not connect to display qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found. This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
3. 查找问题
终端使用,能找到具体未安装库,最后安装即可
bash export QT_DEBUG_PLUGINS=1
4. 如果未报库安装问题,则尝试下面的办法
pip uninstall opencv-python
pip install opencv-python-headless
2.4 opencv
pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple --no-cache-dir
问题一:from .cv2 import _registerMatType
pip install opencv-python install "opencv-python-headless<4.3
2.4 离线torch安装包
- 在网址下载torch和torchvision
注意,最好根据torch官网的匹配进行下载安装
- 利用命令下载安装
pip3 install torch==1.10.1+cu113 torchvision==0.11.2+cu113 torchaudio --index-url https://download.pytorch.org/whl/cu113