如何在在 CentOS 中安装 Python 3
一、
在 CentOS 中安装 Python 3 可以通过几种方法实现,具体取决于你的 CentOS 版本。以下是最常用的方法:
方法 1: 使用
yum
安装(CentOS 7 及以上)
在 CentOS 7 及以上版本中,可以通过
yum
包管理器直接安装 Python 3。
步骤:
- 更新包管理器:
sudo yum -y update
- 安装 Python 3: CentOS 7 默认使用 Python 2.7,你可以安装 Python 3 并保留 Python 2。
sudo yum -yinstall python3
- 验证安装: 安装完成后,你可以通过以下命令验证是否安装成功:
python3 --version
如果显示 Python 3.x.x 版本号,说明安装成功。 - 安装 pip(Python 包管理器): 通常,
pip
会随 Python 3 一起安装,但你也可以手动安装或升级:sudo yum install python3-pip
验证pip
是否安装成功:pip3 --version
方法 2: 使用 Software Collections (SCL) 安装(适用于 CentOS 7)
Software Collections (SCL) 是一种允许在 CentOS 中安装和使用多个软件版本的工具,包括 Python 3。
步骤:
- 安装 SCL:
sudo yum -yinstall centos-release-scl
- 安装 Python 3: 使用 SCL 安装 Python 3.6(或其他版本):
sudo yum -yinstall rh-python36
- 启用 Python 3: 安装完成后,启用 Python 3 环境:
scl enable rh-python36 bash
- 验证安装:
python3 --version
方法 3: 从源代码编译安装(适用于高级用户)
如果你需要特定版本的 Python 3,或者在 CentOS 6 中无法通过
yum
安装 Python 3,你可以选择从源代码编译安装。
步骤:
- 安装依赖包: 首先,安装构建 Python 所需的依赖包:
sudo yum -y groupinstall "Development Tools"sudo yum -yinstallwget openssl-devel bzip2-devel libffi-devel
- 下载 Python 源代码: 选择你需要的 Python 版本,下载源代码。例如,下载 Python 3.9.1:
cd /usr/srcsudowget https://www.python.org/ftp/python/3.9.1/Python-3.9.1.tgz
- 解压源代码:
sudotar xzf Python-3.9.1.tgzcd Python-3.9.1
- 编译 Python: 配置和编译 Python:
sudo ./configure --enable-optimizationssudomake altinstall
注意:使用altinstall
而不是install
,以避免覆盖系统的默认 Python 版本。 - 验证安装: 编译完成后,验证安装:
python3.9 --version
- 安装 pip: 如果没有随 Python 一起安装
pip
,可以手动安装:sudo python3.9 -m ensurepip
方法 4: 使用
pyenv
安装(适用于多版本管理)
pyenv
是一个非常灵活的 Python 版本管理工具,允许你安装和管理多个 Python 版本。
安装
pyenv
:
- 安装依赖:
sudo yum -yinstallgit gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel xz xz-devel libffi-devel
- **安装
pyenv
**:curl https://pyenv.run |bash
- 配置环境变量: 在
.bashrc
或.bash_profile
中添加以下内容:exportPATH="$HOME/.pyenv/bin:$PATH"eval"$(pyenv init --path)"eval"$(pyenv virtualenv-init -)"
- 安装 Python: 使用
pyenv
安装 Python 3.9.1:pyenv install3.9.1pyenv global 3.9.1
- 验证安装:
python --version
总结
- CentOS 7 及以上:使用
yum
或SCL
安装 Python 3 是最简单的方法。 - CentOS 6:推荐使用从源代码编译安装方法。
- 多版本管理:使用
pyenv
可以方便地管理和切换多个 Python 版本。
通过以上方法,你可以在 CentOS 系统上顺利安装和管理 Python 3。
二、
在 CentOS 上安装 Python 之前,安装所需的依赖包可以确保 Python 的编译和运行顺利。以下是安装 Python 3 之前建议安装的一些常见依赖包,这些依赖包适用于从源代码编译 Python 以及确保 Python 和相关工具的正常运行。
1. 开发工具包
安装开发工具包 (
Development Tools
),包含编译器和其他构建软件所需的基本工具:
sudo yum -y groupinstall "Development Tools"
2. 必备依赖包
这些是 Python 需要的基本依赖包,确保编译和一些常见的 Python 库能够正常工作:
sudo yum -yinstall\wget\make\
gcc \
gcc-c++ \
zlib-devel \bzip2\
bzip2-devel \
readline-devel \
sqlite \
sqlite-devel \
openssl-devel \
tk-devel \
libffi-devel \
xz-devel \
libuuid-devel \
libuuid \
libX11-devel \
libXext-devel \
libXrender-devel \
libXtst-devel \
libXi-devel \
libXrandr-devel
3. Python 特定依赖包
为了编译支持完整功能的 Python,这些依赖包是必不可少的:
zlib-devel
: 用于压缩和解压缩支持(gzip)。bzip2-devel
: 用于支持bz2
压缩文件。openssl-devel
: 提供 SSL/TLS 支持。readline-devel
: 用于命令行的历史记录支持和更好的用户体验。sqlite-devel
: 支持内置的 SQLite 数据库模块。tk-devel
: 提供 Tkinter GUI 库的支持。libffi-devel
: 用于支持ctypes
和cffi
等库。
4. XML 和开发库
用于支持 Python 的
xml
和
lxml
等库的解析器:
sudo yum -yinstall\
libxml2-devel \
libxslt-devel
5. 其他有用的依赖
这些依赖项支持其他常见的 Python 模块和功能:
sudo yum -yinstall\
xz \
xz-devel \
gdbm-devel \
db4-devel \
expat-devel \
libpcap-devel \
ncurses-devel \
gdbm \
libgdbm-dev \
libgdbm-compat-dev \
libdb4o-cil-dev \
libbz2-dev \
liblzma-dev
6. Image 处理和音频处理相关库
如果你打算处理图像、音频或视频文件,可以安装这些库:
sudo yum -yinstall\
libjpeg-devel \
libpng-devel \
freetype-devel \
giflib-devel \
libtiff-devel \
openjpeg-devel \
libopenjpeg2 \
libopenjpeg-dev \
libwebp-devel \
libvorbis-devel \
libtheora-devel \
libogg-devel \
libavc1394-devel \
libdc1394-devel \
libraw1394-devel
7. 数据库相关开发库
用于支持 Python 与各种数据库的交互:
sudo yum -yinstall\
mysql-devel \
postgresql-devel \
mariadb-devel \
unixODBC-devel \
libpqxx-devel
8. 其他支持库
一些额外的依赖库,这些库可能被需要或推荐用于 Python 环境中的特定模块:
sudo yum -yinstall\
libXft-devel \
libXinerama-devel \
libXcursor-devel \
libXcomposite-devel \
libXdamage-devel \
libXfixes-devel \
libXi-devel \
libXmu-devel \
libXpm-devel \
libXaw-devel \
libXft-devel \
libXt-devel \
libXdmcp-devel \
libXau-devel \
libXaw3d-devel \
libXfixes-devel
9. 文档生成库
这些库支持生成文档的 Python 工具,如 Sphinx:
sudo yum -yinstall\
doxygen \
graphviz \
texinfo \
pandoc \
latexmk \
epydoc
10. 网络相关库
如果你需要网络支持库,如支持
curl
、
ftp
等,可以安装这些库:
sudo yum -yinstall\
libcurl-devel \
libidn-devel \
openssh-clients \
openssh-server \rsync\
nfs-utils
总结
以上是安装 Python 及其开发环境时可能需要的依赖包的完整列表。根据你的实际需要,某些依赖包可能不是必需的,但建议安装这些依赖包以确保你的 Python 环境具有广泛的功能支持。这些依赖包将有助于构建一个功能完备的 Python 环境,支持各种开发任务。
三、
在没有网络连接的 Linux 系统上离线安装并编译 Python 3 的步骤如下:
1. 准备工作
在有网络连接的计算机上下载 Python 源代码包和所需的依赖包。
1.1 下载 Python 源代码包
- 前往 Python 官方网站,下载所需版本的源代码压缩包(如
Python-3.9.1.tgz
)。
wget https://www.python.org/ftp/python/3.9.1/Python-3.9.1.tgz
1.2 下载依赖包
- 下载 Python 编译所需的所有依赖包。这些包可以通过
yum
或apt-get
在有网络的系统上下载。
# 使用 yumdownloader 下载依赖包(CentOS/RHEL)sudo yum install yum-utils
yumdownloader --resolve\wget\make\
gcc \
zlib-devel \
bzip2-devel \
readline-devel \
sqlite-devel \
openssl-devel \
tk-devel \
libffi-devel \
xz-devel
- 将下载的
.rpm
包拷贝到 USB 驱动器或其他可移动存储设备上。
2. 传输文件到离线系统
- 使用 USB 驱动器或其他存储介质,将 Python 源代码包和所有依赖包传输到离线系统。
# 例如,挂载 USB 驱动器到 /mnt/usbmount /dev/sdb1 /mnt/usb
cp /mnt/usb/Python-3.9.1.tgz ~/
cp /mnt/usb/*.rpm ~/
3. 安装依赖包
- 在离线系统上安装所有依赖包:
# 在 CentOS/RHEL 系统上使用 rpm 安装sudorpm-Uvh *.rpm
4. 编译并安装 Python 3
- 解压 Python 源代码包:
tar xzf Python-3.9.1.tgz
cd Python-3.9.1
- 配置编译环境,启用优化选项:
./configure --enable-optimizations
- 编译并安装 Python:
sudomake altinstall
注意:使用
altinstall
而不是
install
以避免覆盖系统自带的 Python 版本。
5. 验证安装
- 确保 Python 3 安装成功:
python3.9 --version
- 安装完成后,你可以使用
python3.9
命令来运行 Python 3。
6. (可选)安装 pip
- 安装 pip(如果没有随 Python 一起安装):
sudo python3.9 -m ensurepip
总结流程图
以下是步骤的简要流程图:
- 准备工作- 下载 Python 源代码- 下载依赖包
- 传输文件- 使用 USB 驱动器或网络将文件传输到离线系统
- 安装依赖包- 使用
rpm
命令安装依赖包 - 编译和安装 Python 3- 解压源代码并配置编译环境- 编译并安装 Python
- 验证安装- 检查 Python 版本
- (可选)安装 pip
通过这些步骤,你就可以在没有网络连接的 Linux 系统上成功离线安装和编译 Python 3。
版权归原作者 阿寻寻 所有, 如有侵权,请联系我们删除。