Python 安裝
(1) 准備編譯環境
yum -y install gcc g++ gcc-c++ libstdc++-devel
yum -y install zlib-devel bzip2-devel ncurses-devel openssl openssl-devel
(2) 下載 Python3.5 代碼包
wget https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tar.xz
(3) 編譯安裝
在安裝包中有一個 README 的文件,里面有寫如何安裝
tar Jxvf Python-3.5.0.tar.xz
cd Python-3.5.0
./configure --prefix=/usr/local/lib/python3
make && make install
(4) 軟鏈接
ln -s /usr/local/lib/python3 /usr/local/python
(4) 添加環境變量
在 /etc/profile.d 下新添加 python.sh 文件
vim /etc/profile.d/python.sh
PYTHON_HOME=/usr/local/python
export PATH=$PATH:$PYTHON_HOME/bin
export PYTHONPATH=$PYTHONPATH:$PYTHON_HOME/lib/python2.7
問題 1: fatal error: linux/limits.h: No such file or directory
yum install kernel-headers kernel-devel
In file included from /usr/include/x86_64-linux-gnu/bits/posix1_lim.h:160:0,
from /usr/include/limits.h:143,
from /usr/lib/gcc/x86_64-linux-gnu/4.8/include-fixed/limits.h:168,
from /usr/lib/gcc/x86_64-linux-gnu/4.8/include-fixed/syslimits.h:7,
from /usr/lib/gcc/x86_64-linux-gnu/4.8/include-fixed/limits.h:34,
from scripts/basic/fixdep.c:114:
/usr/include/bits/local_lim.h:38:26: fatal error: linux/limits.h: No such file or directory\
Linux 編譯內核遇到找不到 linux/limits.h 的問題
問題 2: 設置了 Python 的路徑,但啟動 Python 時總是報 ImportError: No module named site 這個錯誤
[root@localhost zookeeper-3.4.6]# python
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
ImportError: No module named site
[root@localhost zookeeper-3.4.6]# cd /usr/local/lib/python27/
解決:
查看Python路徑相關環境變量的意義。
- PYTHONHOME :指定 Python 的標准庫。
- PYTHONPATH :用於擴充 Python 查找模塊文件的路徑。
這里是導入 site 模塊時出錯,所以應該在 PYTHONPATH 上增加 site 模塊的路徑。
查找site相關文件的路徑:
[root@tZ etc]# find / -name site.py*
/usr/lib64/python2.7/site.pyc
/usr/lib64/python2.7/site.py
/usr/lib64/python2.7/site.pyo
增加路徑到環境變量:
export PYTHONPATH=$PYTHONPATH:/usr/lib64/python2.7