環境 python3.8
Django3.0.2
Centos6
寫在前面的話,不要直接按照書寫的內容順序來安裝,先通讀下全文,再繼續安裝,
查看環境
安裝python3.8
安裝組件
sudo yum install yum-utils
下載python3.8.1源碼
wget https://www.python.org/ftp/python/3.8.1/Python-3.8.1.tgz
這一步是爲了安裝pip
yum groupinstall 'Development Tools'
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
正式安裝python步驟
tar xf Python-3.8.1.tgz
cd Python-3.8.1
./configure
sudo make && make install
編譯完成設置pip變量
ln -s /usr/local/bin/pip3 /usr/bin/pip
configure: error: in `/home/Python-3.8.1':
configure: error: no acceptable C compiler found in $PATH
這個錯誤是沒有安裝gcc,所以編譯出錯
yum install gcc -y
編譯完成
安裝Django
pip install Django -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
zipimport.ZipImportError: can't decompress data; zlib not available
make: *** [install] 錯誤 1
解決方法
yum -y install zlib*
進入 python安裝包,修改Module路徑的setup文件:
Modules/Setup.dist (或者 Modules/Setup) 文件
Sqlite3
首先大概會報一下兩個問題:
1. no mudole named _sqlite3
2. mportError: dynamic module does not define module export function (PyInit__caffe)
其實這兩個問題都是因爲python3以上版本不太支持sqlite3,下面的方法是親測沒問題,來自(sparkexpert大神)
(1)安裝sqlite3的包
wget https://www.sqlite.org/2017/sqlite-autoconf-3170000.tar.gz --no-check-certificate
tar zxvf sqlite-autoconf-3300100.tar.gz
cd sqlite-autoconf-3300100
./configure --prefix=/usr/local/sqlite3 --disable-static --enable-fts5 --enable-json1 CFLAGS="-g -O2 -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_FTS4=1 -DSQLITE_ENABLE_RTREE=1"
make && make install
(2)對python3進行重新編譯
cd Python-3.8.1
LD_RUN_PATH=/usr/local/sqlite3/lib ./configure LDFLAGS="-L/usr/local/sqlite3/lib" CPPFLAGS="-I /usr/local/sqlite3/include"
LD_RUN_PATH=/usr/local/sqlite3/lib make
LD_RUN_PATH=/usr/local/sqlite3/lib sudo make install
經過上述步驟後,應該就沒有什麼問題了,控制檯輸入python3進入環境
import sqlite3沒報錯說明ok