本站消息

  出租广告位,需要合作请联系站长

  今日名言-想象你自己对困难作出的反应,不是逃避或绕开它们,而是面对它们,同它们打交道,以一种进取的和明智的方式同它们奋斗 。——马克斯威尔·马尔兹

  今日名言-用谅解、宽恕的目光和心理看人、待人。人就会觉得葱笼的世界里,春意盎然,到处充满温暖。——蔡文甫


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

CentOS 7 离线搭建 Python 3.8.5 机器学习环境

发布于2021-07-25 06:33     阅读(854)     评论(0)     点赞(4)     收藏(3)


在很多生产环境是禁止访问外网的,yum和pip虽然很香,但是没了网就废了,只能手动编译安装各种依赖包。

0、假设gcc和g++已安装好(最基础的编译环境)

#查看C和C++编译器的版本
gcc --version
g++ --version

1、需要准备如下安装包,并上传到服务器

offlinePackage/
├── python(16)
│   ├── Cython-0.29.24-cp38-cp38-manylinux1_x86_64.whl
│   ├── future-0.18.2.tar.gz
│   ├── joblib-1.0.1-py3-none-any.whl
│   ├── numpy-1.19.5-cp38-cp38-manylinux1_x86_64.whl
│   ├── pandas-1.2.3-cp38-cp38-manylinux1_x86_64.whl
│   ├── pipdeptree-2.0.0-py3-none-any.whl
│   ├── PyHive-0.6.4.tar.gz
│   ├── Python-3.8.5.tgz
│   ├── python_dateutil-2.8.2-py2.py3-none-any.whl
│   ├── pytz-2021.1-py2.py3-none-any.whl
│   ├── scikit_learn-0.23.2-cp38-cp38-manylinux1_x86_64.whl
│   ├── scipy-1.5.4-cp38-cp38-manylinux1_x86_64.whl
│   ├── six-1.16.0-py2.py3-none-any.whl
│   ├── threadpoolctl-2.2.0-py3-none-any.whl
│   ├── thrift-0.13.0.tar.gz
│   └── xgboost-1.3.3-py3-none-manylinux2010_x86_64.whl
└── rpm(11)
    ├── bzip2-1.0.6-13.el7.x86_64.rpm
    ├── bzip2-devel-1.0.6-13.el7.x86_64.rpm
    ├── bzip2-libs-1.0.6-13.el7.x86_64.rpm
    ├── libffi-3.0.13-19.el7.x86_64.rpm
    ├── libffi-devel-3.0.13-19.el7.x86_64.rpm
    ├── python-backports-1.0-8.el7.x86_64.rpm
    ├── python-backports-lzma-0.0.2-9.el7.x86_64.rpm
    ├── xz-devel-5.2.2-1.el7.x86_64.rpm
    ├── zlib-1.2.7-18.el7.x86_64.rpm
    ├── zlib-devel-1.2.7-18.el7.x86_64.rpm
    └── zlib-static-1.2.7-18.el7.x86_64.rpm



A、下载RPM包
#libffi
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/libffi-3.0.13-19.el7.x86_64.rpm
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/libffi-devel-3.0.13-19.el7.x86_64.rpm
#zlib
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/zlib-1.2.7-18.el7.x86_64.rpm
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/zlib-devel-1.2.7-18.el7.x86_64.rpm
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/zlib-static-1.2.7-18.el7.x86_64.rpm
#bzip2
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/bzip2-1.0.6-13.el7.x86_64.rpm
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/bzip2-libs-1.0.6-13.el7.x86_64.rpm
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/bzip2-devel-1.0.6-13.el7.x86_64.rpm
#python-backports-lzma
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/python-backports-1.0-8.el7.x86_64.rpm
wget http://mirror.centos.org/centos/7/extras/x86_64/Packages/python-backports-lzma-0.0.2-9.el7.x86_64.rpm
#xz-devel
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/xz-devel-5.2.2-1.el7.x86_64.rpm
B、下载Python包
#Python==3.85
wget https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tgz
#Cython==0.29.24
wget https://files.pythonhosted.org/packages/aa/eb/9f453315a0702349fff2147f88e2a147035168f152c03684e94b90ed17ec/Cython-0.29.24-cp38-cp38-manylinux1_x86_64.whl
#pipdeptree==2.0.0
wget https://files.pythonhosted.org/packages/fa/22/8f1350b55e4297670813815142425b58829036197f0b4a0fc8f543928717/pipdeptree-2.0.0-py3-none-any.whl
#six==1.16.0
wget https://files.pythonhosted.org/packages/d9/5a/e7c31adbe875f2abbb91bd84cf2dc52d792b5a01506781dbcf25c91daf11/six-1.16.0-py2.py3-none-any.whl
#thrift==0.13.0
wget https://files.pythonhosted.org/packages/97/1e/3284d19d7be99305eda145b8aa46b0c33244e4a496ec66440dac19f8274d/thrift-0.13.0.tar.gz
#python-dateutil==2.8.2
wget https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl
#numpy==1.19.5
wget https://files.pythonhosted.org/packages/21/da/4a59e01f8fff4281a068e90868edd62253c1431a1b7315fe6789f8a0d9c0/numpy-1.19.5-cp38-cp38-manylinux1_x86_64.whl
#pytz==2021.1
wget https://files.pythonhosted.org/packages/70/94/784178ca5dd892a98f113cdd923372024dc04b8d40abe77ca76b5fb90ca6/pytz-2021.1-py2.py3-none-any.whl
#pandas==1.2.3
wget https://files.pythonhosted.org/packages/e3/a8/11b157725988409063dff720be51b4dcca2260f2cc4547853172c9b4e6ec/pandas-1.2.3-cp38-cp38-manylinux1_x86_64.whl
#future==0.18.2
wget https://files.pythonhosted.org/packages/45/0b/38b06fd9b92dc2b68d58b75f900e97884c45bedd2ff83203d933cf5851c9/future-0.18.2.tar.gz
#PyHive==0.6.4
wget https://files.pythonhosted.org/packages/7a/3b/379563ead1d431b946d5d20b8c3b960c318581926702040931aaa2d5cf28/PyHive-0.6.4.tar.gz
#scipy==1.5.4
wget https://files.pythonhosted.org/packages/ab/a3/4e10c6091f6b17267e23a6de77c05241834fb3a1ec6ad655b566a6ea1d82/scipy-1.5.4-cp38-cp38-manylinux1_x86_64.whl
#xgboost==1.3.3
wget https://files.pythonhosted.org/packages/2e/57/bf5026701c384decd2b995eb39d86587a103ba4eb26f8a9b1811db0896d3/xgboost-1.3.3-py3-none-manylinux2010_x86_64.whl
#joblib==1.0.1
wget https://files.pythonhosted.org/packages/55/85/70c6602b078bd9e6f3da4f467047e906525c355a4dacd4f71b97a35d9897/joblib-1.0.1-py3-none-any.whl
#threadpoolctl==2.2.0
wget https://files.pythonhosted.org/packages/c6/e8/c216b9b60cbba4642d3ca1bae7a53daa0c24426f662e0e3ce3dc7f6caeaa/threadpoolctl-2.2.0-py3-none-any.whl
#scikit-learn==0.23.2
wget https://files.pythonhosted.org/packages/7f/c1/e19f767594035028b6ab88010742300ce5fcbdfeff051fc9afffcbebf644/scikit_learn-0.23.2-cp38-cp38-manylinux1_x86_64.whl

2、安装rpm依赖包(需root权限)

#查询若无则安装libffi-devel
rpm -qa|grep libffi-devel
sudo rpm -ivh libffi-devel-3.0.13-19.el7.x86_64.rpm
#若libffi版本比较低,则需要先升级一下
sudo rpm -Uvh libffi-3.0.13-19.el7.x86_64.rpm

#查询若无则安装zlib-devel
rpm -qa|grep zlib-devel
sudo rpm -ivh zlib-devel-1.2.7-18.el7.x86_64.rpm

#查询若无则安装zlib-static
rpm -qa|grep zlib-static
sudo rpm -ivh zlib-static-1.2.7-18.el7.x86_64.rpm
#若zlib和zlib-devel都已安装好,但版本较低,则需要升级一下,需要用一条命令同时升级,因为循环依赖
rpm -Uvh zlib-1.2.7-18.el7.x86_64.rpm zlib-devel-1.2.7-18.el7.x86_64.rpm 

#升级或安装bzip2
rpm -Uvh bzip2-1.0.6-13.el7.x86_64.rpm
rpm -Uvh bzip2-libs-1.0.6-13.el7.x86_64.rpm
rpm -Uvh bzip2-devel-1.0.6-13.el7.x86_64.rpm

#安装python-backports
rpm -Uvh python-backports-1.0-8.el7.x86_64.rpm
rpm -Uvh python-backports-lzma-0.0.2-9.el7.x86_64.rpm

#安装zx
rpm -Uvh xz-devel-5.2.2-1.el7.x86_64.rpm

3、安装Python 3.8.5

tar -zxvf Python-3.8.5.tgz
cd Python-3.8.5
./configure --prefix=/home/lq/python3 --with-ssl
make && make install
#配置python3
#vi ~/.bash_profile
PATH=$PATH:$HOME/.local/bin:$HOME/bin:/home/lq/python3/bin
source ~/.bash_profile
#查看python版本和pip版本
python3 -V
pip3 -V
#查看已安装的python包
pip3 list

4、按顺序安装Python包

pip3 install Cython-0.29.24-cp38-cp38-manylinux1_x86_64.whl
pip3 install pipdeptree-2.0.0-py3-none-any.whl
pip3 install six-1.16.0-py2.py3-none-any.whl
pip3 install python_dateutil-2.8.2-py2.py3-none-any.whl
pip3 install numpy-1.19.5-cp38-cp38-manylinux1_x86_64.whl
pip3 install pytz-2021.1-py2.py3-none-any.whl
pip3 install pandas-1.2.3-cp38-cp38-manylinux1_x86_64.whl

tar -zxvf thrift-0.13.0.tar.gz
cd thrift-0.13.0 && python3 setup.py install && cd ..

tar -zxvf future-0.18.2.tar.gz
cd future-0.18.2 && python3 setup.py install && cd ..

tar -zxvf PyHive-0.6.4.tar.gz
cd PyHive-0.6.4 && python3 setup.py install && cd ..

pip3 install scipy-1.5.4-cp38-cp38-manylinux1_x86_64.whl
pip3 install xgboost-1.3.3-py3-none-manylinux2010_x86_64.whl
pip3 install joblib-1.0.1-py3-none-any.whl
pip3 install threadpoolctl-2.2.0-py3-none-any.whl
pip3 install scikit_learn-0.23.2-cp38-cp38-manylinux1_x86_64.whl

5、查看Python包的依赖关系树

#查看依赖树
pipdeptree

Cython==0.29.24
pandas==1.2.3
  - numpy [required: >=1.16.5, installed: 1.19.5]
  - python-dateutil [required: >=2.7.3, installed: 2.8.2]
    - six [required: >=1.5, installed: 1.16.0]
  - pytz [required: >=2017.3, installed: 2021.1]
pipdeptree==2.0.0
  - pip [required: >=6.0.0, installed: 21.1.3]
PyHive==0.6.4
  - future [required: Any, installed: 0.18.2]
  - python-dateutil [required: Any, installed: 2.8.2]
    - six [required: >=1.5, installed: 1.16.0]
scikit-learn==0.23.2
  - joblib [required: >=0.11, installed: 1.0.1]
  - numpy [required: >=1.13.3, installed: 1.19.5]
  - scipy [required: >=0.19.1, installed: 1.5.4]
    - numpy [required: >=1.14.5, installed: 1.19.5]
  - threadpoolctl [required: >=2.0.0, installed: 2.2.0]
setuptools==47.1.0
xgboost==1.3.3
  - numpy [required: Any, installed: 1.19.5]
  - scipy [required: Any, installed: 1.5.4]
    - numpy [required: >=1.14.5, installed: 1.19.5]

6、安装好不一定是真的好,还需要导入验证

import Cython
import future
import joblib
import numpy
import pandas
import pipdeptree
import pyhive
import dateutil
import pytz
import sklearn
import scipy
import six
import threadpoolctl
import thrift

如果导入没有问题,那么环境才算搭建好。

原文链接:https://blog.csdn.net/lynch0571/article/details/119024948



所属网站分类: 技术文章 > 博客

作者:听说你喜欢我

链接:http://www.pythonpdf.com/blog/article/515/7498e075056aa8b9ec1e/

来源:编程知识网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

4 0
收藏该文
已收藏

评论内容:(最多支持255个字符)