centos7環境編譯安裝python3.7.7和pipenv的簡單使用


centos7環境編譯安裝python3.7.7

# 安裝基本的基礎源和epel源為阿里雲的mirrors
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

# 安裝依賴
# bzip2-devel 一定要先安裝,然后編譯python,compress插件依賴

yum install -y gcc gcc-c++ htop telnet iotop iptraf iftop libpng12 make logrotate xinetd ntsysv  sysstat perl autoconf libjpeg libjpeg-devel libpng libpng-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel e2fsprogs e2fsprogs-devel krb5-devel libidn libidn-devel libxml2 libxml2-devel libxslt-devel libevent-devel libtool libtool-ltdl bison  ntpdate  patch vim wget openssh-clients bind-utils

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

yum install -y mysql-devel python-devel mysql-lib
yum install libffi-devel -y

# 安裝python3,最好開screen避免中斷
screen -S python

# 獲取python3.7.7源碼並編譯安裝
cd /usr/local/src
wget https://www.python.org/ftp/python/3.7.7/Python-3.7.7.tgz
tar xf Python-3.7.7.tgz
cd Python-3.7.7
mkdir -p /usr/local/python3

./configure --prefix=/usr/local/python3

make && make install
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

[root@sz_xxgc_cms_slave01_18_214 Python-3.7.7]# python3 -V
Python 3.7.7

# 設置pip的阿里雲源:提升pip安裝軟件速度

pip3 config set global.index-url https://mirrors.aliyun.com/pypi/simple/

# 安裝pipenv的錯誤處理:
# pip3 install pipenv

報錯:
    ModuleNotFoundError: No module named '_ctypes'
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.


解決辦法,yum install libffi-devel -y 重新編譯安裝python3.7

ln -s /usr/local/python3/bin/pipenv /usr/bin/pipenv3

# 創建python3.7的虛擬環境
[root@sz_xxgc_cms_slave01_18_214 myproject]# pipenv3 --python 3.7

# 在目錄下安裝django包
# pip3 install django

# 下載很慢,更換pipenv的源
[root@sz_xxgc_cms_slave01_18_214 myproject]# cat Pipfile 
[[source]]
name = "pypi"
url = "https://mirrors.aliyun.com/pypi/simple/"
verify_ssl = true

[dev-packages]

[packages]

[requires]
python_version = "3.7"


# 查看依賴關系
[root@sz_xxgc_cms_slave01_18_214 myproject]# pipenv3 graph
Django==3.0.4
  - asgiref [required: ~=3.2, installed: 3.2.5]
  - pytz [required: Any, installed: 2019.3]
  - sqlparse [required: >=0.2.2, installed: 0.3.1]

Pipfile.lock里面是hash值,有利於安全性
pipenv3 install requests --skip-lock 跳過安全檢測



# 進入虛擬環境
[root@sz_xxgc_cms_slave01_18_214 myproject]# pipenv3 shell
Launching subshell in virtual environment…
[root@sz_xxgc_cms_slave01_18_214 myproject]#  . /root/.local/share/virtualenvs/myproject-fWPhQNBN/bin/activate
(myproject) [root@sz_xxgc_cms_slave01_18_214 myproject]

exit退出虛擬環境

# 安裝在dev環境
pipenv install --dev pytest --skip-lock

 2.安裝virtualenv虛擬環境,並創建純凈的虛擬環境
pip3 install virtualenv
/usr/local/python3/bin/virtualenv --python=/usr/local/python3/bin/python3 /usr/local/api_monitor_env/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM