CentOS环境上离线安装python3及相关包

0. 准备操作系统及安装包

  1. 准备操作系统环境:
    首先安装依赖包,安装相应的编译工具
bash 复制代码
[root@bigdatahost bin]# yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel 

2。 解压离线包:

bash 复制代码
[root@DeepLearning intasllpython]# tar -xvf LinuxPython.tar

1. 离线安装python3.8

  1. 在/usr/local下创建python3.8目录
bash 复制代码
[root@DeepLearning local]# cd /usr/local
[root@DeepLearning local]# mkdir python3.8
  1. 拷贝文件Python-3.8.16.tgz到新建临时安装目/home/python/intasllpython,解压文件:
bash 复制代码
[root@DeepLearning intasllpython]# tar xzvf Python-3.8.16.tgz
  1. 指定安装目录,解压后,进入Python-3.8.16目录,指定安装目标:
bash 复制代码
[root@DeepLearning local]# cd /home/python/intasllpython/Python-3.8.16
[root@DeepLearningPython-3.8.16]# ./configure --prefix=/usr/local/python3.8
  1. 编译
bash 复制代码
[root@DeepLearningPython-3.8.16]# make
  1. 安装:
bash 复制代码
[root@DeepLearningPython-3.8.16]# make install

最后,提示:

Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed pip-22.0.4 setuptools-56.0.0
  1. 检查验证,进入目录:/usr/local/python3.8/bin,运行:
bash 复制代码
[root@DeepLearning bin]# ./python3 -V
Python 3.8.16

[root@DeepLearning bin]# ./pip3.8 list
Package    Version
---------- -------
pip        22.0.4
setuptools 56.0.0
  1. 创建软链接
bash 复制代码
[root@bigdatahost bin]# ln -s /usr/local/python3.8/bin/python3 /usr/bin/python3
[root@bigdatahost bin]# ln -s /usr/local/python3.8/bin/pip3 /usr/bin/pip3

2. 安装whl格式文件

在Linux上按文件列表名称安装.whl包,其中文件列表放在文本文件中,可以按照以下步骤进行。假设文件列表保存为requirements.txt,并且所有.whl文件都位于当前目录:

bash 复制代码
[root@DeepLearning Linux]# xargs -a requirements.txt -I {} /usr/local/python3.8/bin/pip3.8 install {}

相当于:

pip3 install 文件名

安装需要按照如下列表文件的顺序进行(包有依赖关系,否则安装不上,需要手动处理):

numpy-1.22.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
scipy-1.7.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
tifffile-2023.7.10-py3-none-any.whl
PyWavelets-1.4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
pillow-10.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
packaging-24.1-py3-none-any.whl
networkx-3.1-py3-none-any.whl
imageio-2.9.0-py3-none-any.whl
scikit_image-0.19.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
pytz-2024.1-py2.py3-none-any.whl
tzdata-2024.1-py2.py3-none-any.whl
six-1.16.0-py2.py3-none-any.whl
idna-3.7-py3-none-any.whl
urllib3-1.26.9-py2.py3-none-any.whl
charset_normalizer-3.3.2-py3-none-any.whl
python_dateutil-2.9.0.post0-py2.py3-none-any.whl
h5py-3.11.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
zipp-3.19.2-py3-none-any.whl
pandas-1.4.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
tqdm-4.66.4-py3-none-any.whl
stanio-0.5.0-py3-none-any.whl
pyparsing-3.1.2-py3-none-any.whl
kiwisolver-1.4.5-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
fonttools-4.53.1-py3-none-any.whl
cycler-0.12.1-py3-none-any.whl
contourpy-1.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
certifi-2024.7.4-py3-none-any.whl
requests-2.32.3-py3-none-any.whl
importlib_resources-6.4.0-py3-none-any.whl
holidays-0.52-py3-none-any.whl
matplotlib-3.7.5-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
cmdstanpy-1.2.4-py3-none-any.whl
typing_extensions-4.12.2-py3-none-any.whl
greenlet-3.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
PyMySQL-1.1.1-py3-none-any.whl
SQLAlchemy-2.0.31-py3-none-any.whl
joblib-1.4.2-py3-none-any.whl
threadpoolctl-3.5.0-py3-none-any.whl
scikit_learn-1.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
backports.zoneinfo-0.2.1-cp38-cp38-manylinux1_x86_64.whl
tzlocal-5.2-py3-none-any.whl
APScheduler-3.10.4-py3-none-any.whl
pika-1.3.2-py3-none-any.whl
MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
itsdangerous-2.2.0-py3-none-any.whl
importlib_metadata-8.0.0-py3-none-any.whl
click-8.1.7-py3-none-any.whl
blinker-1.8.2-py3-none-any.whl
werkzeug-3.0.3-py3-none-any.whl
jinja2-3.1.4-py3-none-any.whl
flask-3.0.3-py3-none-any.whl
loguru-0.7.2-py3-none-any.whl
pvlib-0.9.5-py3-none-any.whl

3. 安装tar形式的文件

bash 复制代码
[root@DeepLearning Linux]# /usr/local/python3.8/bin/pip3.8 install bayesian-optimization-1.2.0.tar.gz

相当于:

  1. 解压tar包
bash 复制代码
tar -xvf bayesian-optimization-1.2.0.tar.gz
  1. 进入解压后的目录,使用cd命令进入解压后的目录:
bash 复制代码
cd bayesian-optimization-1.2.0
  1. 查看README或INSTALL文件

    在解压后的目录中查找是否有READMEINSTALL文件,这些文件通常包含有关如何安装软件的说明和说明[。

  2. 安装依赖项

    某些软件可能需要先安装一些依赖项。根据READMEINSTALL文件中的说明,使用包管理器(如apt、yum等)安装所需的依赖项。例如,在Debian/Ubuntu系统中,可以使用以下命令安装依赖:

bash 复制代码
sudo apt-get install -y build-essential python3-dev
  1. 使用pip3安装包
    如果软件提供了setup.py文件,可以使用pip3来安装该包:
bash 复制代码
pip3 install .

注意,这里的点号表示当前目录。如果需要管理员权限,可以在前面加上sudo

  1. 验证安装
    安装完成后,可以通过输入软件名来验证安装是否成功:
bash 复制代码
software --version

software替换为实际的软件名称。

本文使用的离线包:CentOS环境上Python3.8及相关科学计算离线安装包

相关推荐
blessing。。10 分钟前
I2C学习
linux·单片机·嵌入式硬件·嵌入式
2202_7544215425 分钟前
生成MPSOC以及ZYNQ的启动文件BOOT.BIN的小软件
java·linux·开发语言
我感觉。1 小时前
【机器学习chp4】特征工程
人工智能·机器学习·主成分分析·特征工程
努力的悟空1 小时前
国土变更调查拓扑错误自动化修复工具的研究
运维·自动化
DieYoung_Alive1 小时前
一篇文章了解机器学习(下)
人工智能·机器学习
运维&陈同学1 小时前
【zookeeper03】消息队列与微服务之zookeeper集群部署
linux·微服务·zookeeper·云原生·消息队列·云计算·java-zookeeper
幻风_huanfeng1 小时前
人工智能之数学基础:线性代数在人工智能中的地位
人工智能·深度学习·神经网络·线性代数·机器学习·自然语言处理
请你喝好果汁6411 小时前
单细胞|M3-4. 细胞聚类与轨迹推断
机器学习·数据挖掘·聚类
周末不下雨2 小时前
win11+ubuntu22.04双系统 | 联想 24 y7000p | ubuntu 22.04 | 把ubuntu系统装到1T的移动固态硬盘上!!!
linux·运维·ubuntu