最小化安裝的CentOS7上離線安裝Python3.7和科學庫踩坑(gcc+openssl)html
CentOS7上離線安裝Python3.7
由於服務器在堡壘機裏,連不到網,因此全部的服務都要離線安裝,雖然看起來步驟很少,但踩得坑真很多o(╥﹏╥)onode
先把要用到的文件放到服務器上,我放在/opt下了。
而後解壓python包
python
tar -zxvf Python-3.7.0.tgz
而後進入gcc目錄,安裝目錄下的全部依賴。c++
rpm -Uvh * --force --nodeps
同理,將gcc-c++ 和 openssl-devel下的依賴安裝。服務器
這裏有個題外話,當有新的依賴須要安裝時,提示有許多新的依賴要安裝,能夠在一臺有網的服務器下執行
https://www.cnblogs.com/qq931399960/p/11120429.html
python2.7
yum -y install --downloadonly --downloaddir=/opt/openssl-devel/ openssl-devel
能夠將全部關聯到的依賴包下載到downloaddir這個參數後的路徑下,downloadonly參數是隻下載不安裝。spa
可是這兒會有個問題,yum文件下用的是python2.7,當你安裝了新的python或改變了原2.7的連接時,是會報錯的。解決辦法,找到報錯的文件,將第一行路徑中的python改成python2.7.code
vi /usr/bin/yum
將全部報錯的文件都修改完,就沒問題啦。
htm
回到正題
依賴安裝完成後,進入python3.7的目錄下,執行:
blog
./configure --prefix=/usr/local/python3.7 --with-ssl
prefix參數爲安裝路徑,可自行設置,–with-ssl防止安裝完成後pip方法沒法調用ssl的問題。
執行完成後,執行:
make&&make install
等待安裝完成後,創建一個python的軟連接,先把以前的在/usr/bin目錄下的python連接刪掉,執行:
ln -s /usr/local/python3.7/bin/python3 /bin/python
完成後,爲pip也創建一個軟連接(用不到pip的能夠忽略,這兒是爲了在有網的服務器下用pip下載tensorflow等科學庫,而後傳給離線的服務器)
ln -s /usr/local/python3.7/bin/pip3 /bin/pip
查看python和pip的版本
python -V pip -V
這時的pip版本應該是10.幾,若是要用到2.0.0以上的tensorflow的話,要先升級一下。
pip install --upgrade pip -i https://pypi.douban.com/simple
升級完後就能安裝,其餘的科學庫了:
pip install tensorflow==2.2.0 -i https://pypi.douban.com/simple
下載好的庫在site-packages文件夾下,拷出來在離線的服務器下就能夠用了。
依賴包資源在這兒:連接:https://pan.baidu.com/s/1iqEpw12hao74zCmD-yFcDQ 提取碼:ehoc