济宁万达网站建设,手机端 网站 模板,网页设计素材为什么拖不进ps,发帖百度秒收录网站分享Python使用总结之Linux部署python3环境 在进行python环境搭建的时候#xff0c;我们通常需要执行大量的命令行语句#xff0c;一不小心输错#xff0c;还得搞半天#xff0c;这里是一个可以一键安装的sh脚本#xff0c;基于centos8.2。安装的python版本可以自己修改#…Python使用总结之Linux部署python3环境 在进行python环境搭建的时候我们通常需要执行大量的命令行语句一不小心输错还得搞半天这里是一个可以一键安装的sh脚本基于centos8.2。安装的python版本可以自己修改我这里是3.12.4 1. 新建sh文件
新建sh文件后将脚本内容复制进去。
vi setup_python3.12.sh脚本内容如下
#!/bin/bash# 脚本名称: setup_python3.12_centos8.sh
# 描述: 在CentOS 8.2上编译安装Python 3.12及其开发环境 (优化国内源)
# 作者: Gemini
# 日期: 2025年6月12日 (更新日期)echo 开始在CentOS 8.2上设置Python 3.12环境...# 0. 检查是否为root用户
if [ $(id -u) -ne 0 ]; thenecho 此脚本需要root权限或sudo权限来运行。请使用 sudo ./setup_python3.12.sh。exit 1
fi# 1. 更新系统并安装必要的编译依赖
echo 1. 更新系统并安装必要的编译依赖...
# 再次强调这里假设您已经通过上述步骤将dnf仓库切换到国内vault源并确保可用。
# 如果dnf update仍然失败请先手动解决仓库问题。
sudo dnf update -y || { echo dnf update 失败请检查网络和dnf仓库配置CentOS 8 EOL问题。; exit 1; }# 再次确保zlib-devel和其他关键依赖已安装
sudo dnf install -y gcc openssl-devel bzip2-devel libffi-devel zlib-devel xz-devel \readline-devel sqlite-devel libuuid-devel gdbm-devel tk-devel \make git wget || { echo 安装必要依赖失败退出。; exit 1; }# 额外检查 zlib-devel 是否真的安装成功
if ! rpm -q zlib-devel /dev/null; thenecho 错误zlib-devel 未安装成功。请手动运行 sudo dnf install -y zlib-devel 并解决可能的问题。exit 1
fi
echo zlib-devel 已确认安装。# 2. 创建一个用于存放Python源代码的目录
echo 2. 创建一个用于存放Python源代码的目录...
PYTHON_INSTALL_DIR/opt/python3.12_src
mkdir -p $PYTHON_INSTALL_DIR
cd $PYTHON_INSTALL_DIR || { echo 无法进入目录 $PYTHON_INSTALL_DIR退出。; exit 1; }# 3. 下载Python 3.12的源代码 (使用国内镜像源示例)
PYTHON_VERSION3.12.4
PYTHON_TARBALLPython-$PYTHON_VERSION.tgz# *** 请注意以下是示例国内镜像URL你需要根据实际情况修改 ***
# 访问例如阿里云或华为云镜像站点的Python下载区找到对应版本
# 例如https://mirrors.aliyun.com/python/
# 或者https://mirrors.huaweicloud.com/python/
PYTHON_DOWNLOAD_URLhttps://mirrors.aliyun.com/python/$PYTHON_VERSION/$PYTHON_TARBALL
# 如果阿里云没有可以尝试清华源TUNA但通常其PyPI镜像更常用文件下载可能需要深挖
# PYTHON_DOWNLOAD_URLhttps://mirrors.tuna.tsinghua.edu.cn/archive/python/3.12.4/Python-3.12.4.tgz # 示例可能路径不准确echo 3. 下载Python $PYTHON_VERSION 源代码 (尝试使用国内源)...
wget -q $PYTHON_DOWNLOAD_URL
if [ $? -ne 0 ]; thenecho 下载 Python $PYTHON_VERSION 源代码失败请检查下载地址或网络连接。echo 下载URL: $PYTHON_DOWNLOAD_URLecho 建议手动检查国内Python镜像站点如阿里云、华为云或清华大学TUNA获取正确的下载链接。exit 1
fi# 4. 解压源代码
echo 4. 解压源代码...
tar -xf $PYTHON_TARBALL
if [ $? -ne 0 ]; thenecho 解压 Python $PYTHON_TARBALL 失败退出。exit 1
fi# 5. 进入解压后的目录并编译安装
PYTHON_SRC_DIRPython-$PYTHON_VERSION
echo 5. 进入解压后的目录并编译安装Python $PYTHON_VERSION...
cd $PYTHON_SRC_DIR || { echo 无法进入源代码目录 $PYTHON_SRC_DIR退出。; exit 1; }# 新增清理之前可能存在的编译产物确保全新编译
echo 清理旧的编译产物如果有...
make clean /dev/null 21
rm -f Makefile config.log config.status Modules/Setup
rm -rf build Python/sysconfig.py
echo 旧的编译产物清理完成。# 配置编译选项
INSTALL_PATH/usr/local/python$PYTHON_VERSION
echo 开始配置 Python 编译安装路径为: $INSTALL_PATH
./configure --prefix$INSTALL_PATH --enable-optimizations --with-ensurepipinstallif [ $? -ne 0 ]; thenecho 配置 Python 编译失败退出。echo 请检查 config.log 文件获取更多错误信息: $PYTHON_INSTALL_DIR/$PYTHON_SRC_DIR/config.loggrep -i zlib config.logexit 1
fiecho 配置成功。检查 config.log 中 zlib 相关信息仅供参考
grep -i zlib config.log# 编译和安装
echo 开始编译 Python (这可能需要一些时间利用所有CPU核心)...
make -j$(nproc)
if [ $? -ne 0 ]; thenecho 编译 Python 失败退出。exit 1
fiecho 开始安装 Python 到 $INSTALL_PATH...
sudo make altinstall
if [ $? -ne 0 ]; thenecho 安装 Python 失败退出。echo 错误信息提示 zipimport.ZipImportError: cant decompress data; zlib not available 意味着 zlib 库在安装 ensurepip 时不可用。echo 请确认 zlib-devel (以及 zlib 运行时库) 已正确安装并且 configure 步骤检测到了它。exit 1
fiecho Python $PYTHON_VERSION 已成功安装到 $INSTALL_PATH# 6. 配置软链接
echo 6. 配置软链接以便于访问 Python 3.12...
PYTHON_BIN$INSTALL_PATH/bin/python$PYTHON_VERSION
PIP_BIN$INSTALL_PATH/bin/pip$PYTHON_VERSIONif [ -f $PYTHON_BIN ]; thensudo ln -sf $PYTHON_BIN /usr/local/bin/python3.12echo 软链接 /usr/local/bin/python3.12 - $PYTHON_BIN 已创建.
elseecho 警告: Python 可执行文件未找到在 $PYTHON_BIN无法创建软链接.
fiif [ -f $PIP_BIN ]; thensudo ln -sf $PIP_BIN /usr/local/bin/pip3.12echo 软链接 /usr/local/bin/pip3.12 - $PIP_BIN 已创建.
elseecho 警告: pip 可执行文件未找到在 $PIP_BIN无法创建软链接.
fi# 7. 验证安装
echo 7. 验证 Python 3.12 安装...
/usr/local/bin/python3.12 --version
/usr/local/bin/pip3.12 --versionif [ $? -eq 0 ]; thenecho Python 3.12 环境搭建成功echo 你可以通过 python3.12 命令来启动 Python 3.12 解释器。echo 你可以通过 pip3.12 命令来安装 Python 包。
elseecho Python 3.12 安装验证失败请检查上述步骤。
fi# 8. 清理下载的源代码 (可选)
echo 8. 清理下载的源代码...
cd $PYTHON_INSTALL_DIR cd ..
rm -rf $PYTHON_INSTALL_DIR
echo 清理完成。echo 脚本执行完毕。2.为脚本添加可执行权限
chmod x setup_python3.12.sh3.执行安装脚本
./setup_python3.12.sh过程中可能会还会遇到一些环境错误不过通过脚本已经解决了很多问题其他问题请自行查询解决另外这个脚本好像没有创建指向python3的软连接可以通过下列方式排查执行。
4. 确认安装成功
ls -l /usr/local/python3.12.4/bin/python3.12
ls -l /usr/local/python3.12.4/bin/pip3.125. 手动创建软连接
sudo ln -sf /usr/local/python3.12.4/bin/python3.12 /usr/local/bin/python3.12
sudo ln -sf /usr/local/python3.12.4/bin/pip3.12 /usr/local/bin/pip3.126. 确认生效
ls -l /usr/local/bin/python3.12
ls -l /usr/local/bin/pip3.127.配置python3命令执行
sudo rm -f /usr/bin/python3 # 如果存在先删除旧的软链接
sudo ln -s /usr/local/python3.12.4/bin/python3.12 /usr/bin/python3以上就可以和python一起愉快的玩耍了