CentOs安装python3.7.0过程及相关报错的处理方式

CentOs安装python3.7.0过程

第一步:下载python相关的源代码,这里之所以是下载源代码是因为python.org并未提供相关的linux的python包
下载地址:https://www.python.org/downloads/release/python-370/
在我本地是在:I:\360安全浏览器下载 下边

第二步:将相应的源代码上传到服务器中,可以使用SSH的连接
第三步:解压tgz文件,命令:tar xvf Python-3.6.0a1.tar.xz(不准确,但就是这种解压命令)
第四步:进行预编译,进入到解压之后的文件夹:Python3.7.0
由于python中源文件是使用c语言编写,所以需要有c的编译环境,即gcc
首先查询有没有 rpm -qa | grep gcc
然后进行预编译,建议使用以下命令
./configure –prefix=/usr/local/python3.7.0
(后边的/usr/local/python3.7.0是指python的安装目录,可以自行指定
其后的命令代表着优化预编译)
第五步:安装python
在解压的目录下(也就是/soft/Python3.7.0)输入命令 make
待make执行没有错误结束之后输入 make install

第六步:检验python安装 输入 python
控制台:
Python 2.6.6 (r266:84292, Aug 18 2016, 15:13:37)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2
Type “help”, “copyright”, “credits” or “license” for more information.

    可以看到其实执行的是python2.6.6而非python3

第七步:配置python3环境变量
path值是一堆的目录,每个目录之间使用:隔开
vi ~/.bash_profile (或者.bashrc)

    [root@zhanglianjun bin]# vi ~/.bashrc

.bashrc

User specific aliases and functions

alias rm=’rm -i’
alias cp=’cp -i’
alias mv=’mv -i’

Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
PATH=$PATH:/usr/local/python-3.7.0/bin
(注意是追加)
再执行:source ~/.bashrc 进行刷新文件

make的时候报错

Fatal Python error: initfsencoding: Unable to get the locale encoding LookupError: unknown encoding:GBK

解决:
按照问题的提示,是找不到GBK编码。使用export指令查看环境变量,发现有如下设置:
LANG=”zh_CN.gbk”
看到这,才想起自己机器的环境一直是设置的utf8,于是使用export指令重新设置字符集为UTF8,如下:
export LC_ALL=”en_US.utf8”
至此,问题解决。
问题虽然解决,但是真正原因还没找到。使用locale -a查看系统字符集,能够找到zh_CN.gbk,这就奇了怪了。但是一时之间也没有找到原因,暂时且这样记录吧。

猜你喜欢

转载自blog.csdn.net/qq_41009846/article/details/82381943