一丸逸、背景
某一個服務(wù)依賴的環(huán)境是由gcc4編譯的python远剩,但本機基于anaconda2安裝的python虐沥,默認編譯為gcc7胡诗,本機默認的python gcc版本也是gcc7陡舅,本機的gcc環(huán)境是gcc4价匠。
二残炮、需求
要在anaconda的虛擬環(huán)境中半等,將python的gcc版本從7改成4蜈缤,且不影響本機默認的環(huán)境配置(再次用anaconda安裝Python時拾氓,gcc版本依然是7)
三、本機環(huán)境檢查
1底哥、本機的gcc版本
命令:gcc --version
2咙鞍、anaconda2默認安裝的python環(huán)境的gcc編譯版本
首先輸入命令,source activate env_name 進入環(huán)境env_name?趾徽,然后輸入命令续滋,python查看gcc編譯版本。
3孵奶、本機默認安裝的python gcc版本
macOS疲酌、centos等系統(tǒng)默認自帶python ,輸入命令python查看gcc版本了袁。
可見朗恳,基于anaconda2默認安裝的python環(huán)境的gcc編譯版本和本機默認安裝的python gcc版本是相同的。
四载绿、更改anaconda的虛擬環(huán)境下安裝的python的gcc版本粥诫,且不改變anaconda默認、本機默認的gcc版本
1崭庸、進入虛擬環(huán)境
source activate env_name?
2怀浆、下載Python源碼
https://www.python.org/ftp/python/2.7.3/Python-2.7.3.tgz
3、解壓Python源碼
tar?zxf Python-2.7.3.tgz
cd?Python-2.7.3
4怕享、export PATH環(huán)境执赡,確保在gcc4環(huán)境下
export?PATH=/opt/compiler/gcc-4.8.2/bin/:$PATH
5、生成Makefile文件熬粗,配置python的安裝路徑
./configure?--prefix=/home/work/tools/python2.7 --enable-shared --enable-unicode=ucs4
6搀玖、編譯、安裝
make
make?install
7驻呐、編輯~/.bashrc文件灌诅,確保使用新安裝的Python
export?PATH=/home/work/tools/python2.7/bin:$PATH
8、下載pip安裝包
https://bootstrap.pypa.io/get-pip.py
9含末、安裝pip
python get-pip.py
如果執(zhí)行失敗猜拾,需要更新pip源:(這一步?jīng)]實驗,因為安裝pip成功了)佣盒,成功跳到10
mkdir?-p $HOME/.pip/
echo?-e?"[global]\nindex-url =?http://pip.baidu.com/pypi/simple"?>> $HOME/.pip/pip.conf
echo?-e?"[install]\ntrusted-host = pip.baidu.com"?>> $HOME/.pip/pip.conf
echo?-e?"[easy_install]\nindex-url =?http://pip.baidu.com/pypi/simple"?>> $HOME/.pydistutils.cfg
10挎袜、修改pip模塊安裝路徑
vim /home/work/tools/python2.7/lib/python2.7/site.py
找到USER_SITE,USER_BASE,修改變量為:
USER_SITE?=?"/home/work/tools/python2.7/lib/python2.7/site-packages"
USER_BASE?=?"/home/work/tools/python2.7"
11盯仪、在bashrc中增加Python的路徑
export?PATH=/home/work/tools/python2.7/bin:$PATH
五紊搪、結(jié)果驗證
可以看到虛擬環(huán)境下的GCC版本已經(jīng)變?yōu)?了。