服务器python版本升级

将服务器python版本从3.6升级到3.9,操作步骤记录如下:

1. 保证相关依赖全部安装

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

在安装过程中发现gcc 4的版本不能成功完成安装,顺便把gcc也升级到了8:

yum install centos-release-scl
yum install devtoolset-8
scl enable devtoolset-8 bash

2. 解压安装包进入目录

tar -xvf Python-3.9.10.tgz
cd Python-3.9.10

3. 配置相关参数生成Makefile

./configure --with-ssl=/usr/bin/openssl --prefix=/usr/local/python3.9 --enable-optimizations
  • –with-ssl=/usr/bin/openssl: 这个选项指定了SSL库的路径。在这种情况下,SSL库的路径被设置为/usr/bin/openssl。SSL库用于支持加密通信。

  • –prefix=/usr/local/python3.9: 这个选项指定了Python安装的目标路径。在这种情况下,Python将被安装在/usr/local/python3目录下。

  • –enable-optimizations: 这个选项启用了优化标志,以提高Python的性能。它会在构建过程中应用一些编译器优化选项,以加速Python的执行速度。

4. 编译

make -j 4 && make altinstall
  • make -j 4: 这个命令使用make工具来编译Python源代码。-j 4选项指定了并行编译的线程数。在这种情况下,使用了4个线程来加快编译过程。您可以根据系统的处理器核心数来调整线程数。

  • &&: 这个符号用于将两个命令连接起来。它表示只有在前一个命令成功执行后,才会执行后面的命令。

  • make altinstall: 这个命令用于安装Python。altinstall选项与install选项类似,但它会将Python安装为一个可选的替代版本,而不是覆盖系统默认的Python版本。这样可以避免对系统的Python环境造成破坏。

5. 建立软连接

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

6. 测试

完成上述操作后,执行python3.9,并import ssl,不报错说明装好了

7. 创建虚拟环境

如果之前安装过virtualenv,不需要在3.9中再次安装,可以直接使用并制定python版本即可

virtualenv -p python3.9 new_env

8. 替换老的虚拟环境

mv old_env old_env_bak
mv new_env old_env

光执行这两步是没用的,激活activate后无法正常使用python,需要修改old_env/bin/activate文件,此时,该文件中应该有一行VIRTUAL_ENV="/path/to/new_env",将其修改为VIRTUAL_ENV="/path/to/old_env",然后激活activate就能正常使用了。

9. 注

8中的操作不建议这么做,By default virtualenv does not support the renaming of environments. It is safer to just delete the virtualenv directory and create a new one with the correct name. 以上。

你可能感兴趣的:(学习笔记(杂项),服务器,python,运维)