CentOS 7.9环境下如何将Python 3.8直接安装至/usr/bin目录
问题原因
Python 源码编译默认的安装前缀参数--prefix值为/usr/local,因此执行make install后可执行文件会生成在/usr/local/bin路径下,不会自动写入/usr/bin。
方案1:编译时指定安装前缀(直接安装到/usr/bin)
该方案会将Python 3.8的所有相关文件直接安装到/usr路径下,适合需要直接写入系统路径的场景,不会覆盖系统默认的Python 2.7版本。
操作步骤:
- 进入之前解压的Python源码目录,清理之前的编译缓存
cd /opt/Python-3.8.12 sudo make clean
- 重新执行配置命令,指定安装前缀为
/usr
sudo ./configure --enable-optimizations --prefix=/usr
- 重新编译安装
sudo make install
安装完成后可直接在/usr/bin目录下看到python3.8、pip3.8可执行文件。
方案2:创建软链接(无需重新编译,更安全)
如果已经完成编译安装,不需要重新编译的话,直接将已生成在/usr/local/bin的可执行文件软链接到/usr/bin即可,该方式不会修改系统路径下的原生文件,避免和yum包管理器产生文件冲突。
操作步骤:
- 先确认已安装的Python 3.8可执行文件路径
which python3.8
正常返回结果为/usr/local/bin/python3.8
- 创建软链接到
/usr/bin
# 链接python3.8 sudo ln -s /usr/local/bin/python3.8 /usr/bin/python3.8 # 如需默认python3命令指向3.8,额外执行 sudo ln -s /usr/bin/python3.8 /usr/bin/python3 # 链接pip3.8 sudo ln -s /usr/local/bin/pip3.8 /usr/bin/pip3.8 # 如需默认pip3命令指向3.8,额外执行 sudo ln -s /usr/bin/pip3.8 /usr/bin/pip3
- 验证是否生效
python3 --version pip3 --version
返回Python 3.8.12即代表配置成功。
内容的提问来源于stack exchange,提问作者pepsi
相关产品推荐
相关产品推荐

