問題描述
環境: CentOS6.5
想在此環境下使用python3進行開發,但CentOS6.5默認的python環境是2.6.6版本。
之前的做法是直接從源碼安裝python3,替換掉現有的開發環境,但在隨后使用過程中發現系統很多腳本依賴python2.6,直接替換會導致很多軟件不正常。
今天發現有朋友使用virtualenv搭建python3開發環境,這里記錄下,也方便我以后查閱。
安裝python3
安裝腳本如下:
wget https://www.python.org/ftp/python/3.4.3/Python-3.4.3.tgz tar zxvf Python-3.4.3.tgz cd Python-3.4.3 ./configure --enable-shared --prefix=/usr/local make && make altinstall
運行以上命令后,你可以在目錄/usr/local/bin/python3.4 看到新編譯的環境。
注意: 這里我們使用的是make altinstall,如果使用make install,你將會看到在系統中有兩個不同版本的Python在/usr/bin/目錄中。這將會導致很多問題,而且不好處理。
如果提示找不到so文件,可以添加以下變量:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
安裝其它版本的python可從官網下載: https://www.python.org/
搭建python3開發環境
1、安裝virtualenv,可以通過pip進行安裝,命令如下:
pip install virtualenv
如果沒有安裝pip,可以通過以下命令安裝:
yum install python-pip
2、創建虛擬環境:
virtualenv -p /usr/local/bin/python3.4 py34env
執行上述命令后,會在當前目錄創建py34env文件夾,該文件夾即為我們創建的虛擬環境。
3、激活虛擬環境:
source py34env/bin/activate
3.1、在虛擬環境中安裝ipython
pip install ipython
如果安裝過程中提示如下錯誤:
Can't connect to HTTPS URL because the SSL module is not available. - skipping
請安裝以下庫:
yum install openssl-devel
然后重新編譯安裝Python:
./configure --prefix=/usr/local && make && make altinstall
3.2、在虛擬環境中啟動ipython:
ipython
4、退出虛擬環境
deactivate
其它
CentOS 6下使用 python3.6的pyenv 問題
1、在操作系統中安裝zlib和bz2相關庫
yum -y install bzip2 bzip2-devel ncurses openssl openssl-devel openssl-static xz lzma xz-devel sqlite sqlite-devel gdbm gdbm-devel tk tk-devel libffi-devel
2、編譯
export CFLAGS="-I/usr/include" export LDFLAGS="-L/usr/lib64" export LD_LIBRARY_PATH=/usr/lib64 make distclean ./configure --enable-optimozations --enable-shared --prefix=/usr/local make -j 4 sudo make altinstall
3、使用
/usr/local/python/bin/pyvenv py36env source ~/env/py36env/bin/activate
本文github地址:
https://github.com/mike-zhang/mikeBlogEssays/blob/master/2015/20150607_使用virtualenv搭建python3開發環境.md
歡迎補充
