树莓派自带的python3.9->python3.7

文章介绍了在树莓派上卸载python3.9并安装python3.7的完整过程,包括依赖包的安装、文件传输、解压、配置以及创建软链接等步骤。在安装过程中遇到了pip3路径问题,最终通过查找和删除系统中所有python相关文件后重新安装解决了问题。
摘要由CSDN通过智能技术生成

1.卸载python3.9:

  1. sudo apt-get remove python3

  1. 卸载之后一些包可以使用sudo apt autoremove这个命令删除

  1. 卸载成功如果出现问题后续再来更新(出现问题后后续安装python也会失败)

  1. (先不要安装先看)

2.安装python3.7:

  1. 我们运行python项目的时候需要下载很多项目的包对环境进行配置

  1. 而python本身也是一个项目,运行也需要依赖包所以使用下面的命令安装依赖包

  1. sudo apt-get install -y make build-essential libssl-dev zlib1g-dev

  1. sudo apt-get install -y libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm

  1. sudo apt-get install -y libncurses5-dev libncursesw5-dev xz-utils tk-dev

  1. 方法很多我也是找了一个我自己使用的方法告诉大家,如果出现问题那就再运行一遍命令

  1. 然后我们下载我们想要安装的python版本网址提供给大家https://www.python.org/ftp/python/

  1. 自己下载好然后使用xftp传进去(传到当前用户的根目录下即可,方便后续解压安装)

  1. 使用命令下载sudo wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz

  1. 解压,不同的解压后缀名对应不同的解压方式,(注意安装版本不同命令需要修改版本号做出调整)

  1. sudo tar -zxvf Python-3.7.3.tgz

  1. 安装,进入解压文件夹,然后执行安装命令

  1. cd Python-3.7.3

  1. sudo ./configure --prefix=/usr/local/python3

  1. sudo make

  1. sudo make install

  1. 安装完成之后,因为需要使用当前安装的python版本所以需要创建软连接(软连接就像windows的快捷方式一样,我们打开的指向软件路径)

  1. ln -s /usr/local/python3/bin/python3 /usr/local/bin/python3

  1. 使用该命令修改会报错,因为我们安装python是在树莓派的pi用户下(我觉得大多数都是这样)我们需要加权限:

  1. sudo ln -s /usr/local/python3/bin/python3 /usr/local/bin/python3

  1. ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3

  1. 同理:

  1. sudo ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3

  1. 报错:ln: failed to create symbolic link '/usr/local/bin/pip3': File exists

  1. 解决:sudo ln -sf /usr/local/python3/bin/pip3 /usr/local/bin/pip3

  1. 测试安装是否成功

  1. 软连接前面的是安装路径,后面的是(快捷方式)路径,也就是我们打开的路径,我们设置的python3,那么我们测试安装成功也需要这样来:

  1. python3 -V

  1. python3 --version

  1. 测试pip3 -V时出现了问题

  1. -bash: /home/pi/.local/bin/pip: /usr/bin/python: bad interpreter: No such file or directory

  1. 使用which查看安装路径:可以看出pip3在pi用户下,而python在root用户下,导致软连接没有设置成功

 pi@raspberrypi:~ $ which pip3
/home/pi/.local/bin/pip3
pi@raspberrypi:~ $ which python3
/usr/local/bin/python3
  1. 发生问题的原因可能是因为我安装的时候应该在根目录下安装python,那么现在如何解决这个问题:

  1. 修改设置软连接:sudo ln -s /home/pi/.local/bin/pip /usr/local/bin/python3(不行)

  1. 我去找了pip的安装路径,/home/pi/.local/bin/pip3路径下是没有的,/usr/local/python3/bin/pip3是有的,那么为啥路径会指向不存在的一个地方呢?

  1. 查看ls -a

  1. 使用cd .local/bin

  1. 解决办法:python卸载不够完全,系统自带两个版本python所以全部卸载再重新安装

3.彻底卸载系统里的所有python:(不要轻易尝试,容易导致系统崩溃)

进入根目录进行操作
查找
  1. find / -name python

  1. find / -name python3

  1. find / -name pip

  1. find / -name pip3

删除
  1. rm -rf 路径/python

........

下面是删除截图:

4.安装,按照第二部来操作,因为在根目录很多权限问题不用管了创建软链接可以直接创建

  1. 校验python安装也都是正常的

  1. python3 -V

  1. pip校验显示没有安装,我就纳闷了,python都装好了,那python里面的pip都只是安装包吗

  1. 重新安装sudo apt install python3-pip

  1. 校验pip3 -V、pip -V

  1. 能用就行,重装系统也没折,还得卸载安装。(这个pip竟然是python3.9的)至于为啥是这样知道的还望告知!

5.其他方法,直接安装带有python3.7、tensorflow1.14.0等软件的的树莓派系统可以看下我写的这篇文章树莓派4b项目环境配置

以上就是我玩树莓派安装python3.7的经验,其实教程很多,遇见问题我都尝试过,各种问题,查找问题也根本没法解决,我才自己写了个,希望不踩坑了。有什么问题我在修改,后续还得写关于树莓派环境的东西,太难受了,真不友好!!!

  • 9
    点赞
  • 95
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 12
    评论
offset += 1; // integer length = response[offset] & 0xFF; offset += 1; // length树莓派官方仓库中目前只支持到Python 3.7版本,如果你需要安装Python 3 int value = 0; for (int i = 0; i < length; i++) { value = (value.9,可以按照以下步骤进行: 1. 在终端中运行以下命令,更新软件包列表: << 8) | (response[offset] & 0xFF); offset += 1; } StringBuilder result = new StringBuilder ``` sudo apt-get update ``` 2. 安装必要的编译工具和依赖库: ``` (); while (offset < response.length) { // variable binding offset += 2; // sequence length = response sudo apt-get install build-essential tk-dev libncurses5-dev libncursesw5-dev libreadline6-dev libdb5[offset] & 0xFF; offset += 1; // length offset += 2; // object id length =.3-dev libgdbm-dev libsqlite3-dev libssl-dev libbz2-dev libexpat1-dev liblzma-dev zlib response[offset] & 0xFF; offset += 1; // length value = 0; for (int i =1g-dev libffi-dev ``` 3. 从Python官网下载源代码包,地址为:https://www.python.org/downloads/ 4. 将下载的源代码包解压缩: ``` tar -xvf Python-3.9.0 0; i < length; i++) { value = (value << 8) | (response[offset] & 0xFF); offset += 1; } result.append(value).append("\n"); // value offset += 2; //.tgz ``` (请根据你下载的文件名进行替换) 5. 切换到解压后的 sequence length = response[offset] & 0xFF; offset += 1; // length int type = response[offset目录: ``` cd Python-3.9.0 ``` 6. 配置编译选项: ``` ./configure --enable-optimizations ``` 7. 编译安装: ``` make -j 4 ] & 0xFF; offset += 1; // type length = response[offset] & 0xFF; offset += sudo make altinstall ``` (-j参数用于指定编译使用的CPU核心数,根据实 1; // length switch (type) { case 0x02: // integer value = 0; for (int i = 0; i < length; i++) { value = (value << 8) | (response[offset]际情况进行调整) 8. 安装完成后,你可以在终端中运行以下命令,验证Python & 0xFF); offset += 1; } result.append(value).append("\n"); break; case 3.9是否已经安装成功: ``` python3.9 --version ``` 如果输出了Python 0x04: // string result.append(new String(response, offset, length)).append("\n"); offset += length; 3.9的版本信息,则说明安装成功了。 需要注意的是,安装Python 3.9可能会耗费 break; case 0x06: // object id StringBuilder oid = new StringBuilder(); value = 0; for较长的时间,尤其是在较低配置的树莓派上。如果你只是想尝试一下Python (int i = 0; i < length; i++) { value = (value << 7) | (response[offset] &3.9的新特性,你可以考虑使用Python虚拟环境,这样可以避免对系统Python版本造成影响。
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiaokanshijie

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值