CentOS下安装Python3
CentOS下安装Python3
下载
CentOS 7默认安装python2.7,默认指令python上指向python2.7的,而且python2.7原文件就在/usr/bin/目录下
[cjp@localhost ~]$ which python
/usr/bin/python
[cjp@localhost bin]$ ls -al|grep python2
lrwxrwxrwx. 1 root root 9 3月 10 01:57 python -> python2.7
lrwxrwxrwx. 1 root root 9 2月 28 06:37 python2 -> python2.7
-rwxr-xr-x. 1 root root 7136 11月 6 2016 python2.7
因此要安装python3的话,得从python官网上下载相应版本的安装包
$ wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tar.xz
默认下载目录就当前路径
解压
# 一步到位
$ tar -xvJf Python-3.6.6.tar.xz
# 分步
$ xz -d Python-3.6.6.tar.xz # 解压成 Python-3.6.2.tar
$ tar xvf Python-3.6.6.tar
解压结果同样在当前路径
配置
需要制定后续编译与安装的制定路径
$ ./configure --prefix=/usr/local/python
gcc
[root@master ~]#./configure --prefix=/usr/local/python
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for --enable-universalsdk... no
checking for --with-universal-archs... 32-bit
checking MACHDEP... linux
checking for --without-gcc... no
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/usr/local/src/pythonSoft/Python-3.6.6':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details
由于本机缺少gcc编译环境
通过yum安装gcc编译环境:yum install -y gcc
$ yum install -y gcc
sudo权限
使用新建账户没发直接执行上面的配置语句,需要root权限,然而sudo还需要针对用户进行添加
$ sudo yum install -y gcc
修改/etc/sudoers,为当前账户添加sudo权限,使用vim
$ vim /etc/sudoers # 进入编辑模式,找到这一 行:"root ALL=(ALL) ALL"在起下面添加"xxx ALL=(ALL) ALL"(这里的xxx是你的用户名),然后保存退出
vim
i:进行编辑
esc:退缩编辑
:x :保存并退出
:x!:强制执行
编译
$ cd Python-3.6.6
$ make
安装
$ make install
因为安装涉及修改/usr/local/,必须使用sudo
$ sudo make install
安装过程提示缺少相应的包,使用yum进行安装
$ yum -y install zlib*
再重新安装即可
$ sudo make install
添加软链接
$ ln -s /usr/local/python/bin/python3.6 /usr/bin/python3
$ ln -s /usr/local/python/bin/pip3 /usr/bin/pip3
这样就同时可以使用python2和python3
pip安装出错,找不到SSL
https://blog.csdn.net/jeryjeryjery/article/details/77880227
$ cd Python-3.6.6
$ ./configure --with-ssl
$ make
$ sudo make install
但是这样的话,之前的 ./configure prefix=/usr/local/python就被覆盖了,改为
$ cd Python-3.6.6
$ ./configure --prefix=/usr/local/python --with-ssl
$ make
$ sudo make install
失败,需要提前安装openssl-devel
$ sudo yum install openssl-devel
再重新执行上面的语句
安装virtualenv和virtualenvwrapper
$ pip3 install virtualenv
$ pip3 install virtualenvwarpper
配置virtualenv软链接
因为virtualenvwarpper之后的指令需要使用到virtualenv的指令;因为python3编译安装时说我们自己自定的路径:/usr/local/python,所以之后使用pip安装的virtualenv并没有把默认指令安装在/usr/local/bin中,所以需要自己添加软链接。
如果最初安装python3时没有指定路径的话,或默认安装在/usr/local/下面,自动创建一个python3.6的文件夹,而且对应的指令文件都会在/usr/local/bin/里面,对应之后使用pip安装的virtualenv,其指令文件应该也是会在/usr/local/bin/里面;很方便,但文件就分离了,强迫症不允许。
配置virtualenvwrapper
不使用软链接,也无法使用,因为virtualenvwrapper的所有指令在一个sh文件中,而不是分散的指令文件;
所以使用.bash_profile配置,针对个人用户,不在root,同时每次修改完要重启一个该用户的bash才生效
# 设置环境变量,以后创建的虚拟环境均在此路径中
export WORKON_HOME=~/pyEnv
# 指定默认的python编译器版本
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3
# 激活virtualenvwrapper.sh
source /usr/local/python/bin/virtualenvwrapper.sh
额外
关于“.bash_profile”和“.bashrc”区别的总结
$ pip freeze > requirements.txt
$ pip install -r requirements.txt
Sqlit3 驱动
https://blog.csdn.net/blueheart20/article/details/79614505
yum install sqlite-devel
重新编译python安装,不需额外加配置信息
CentOS下安装Python3的更多相关文章
- centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'
centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法 3.7版本需要一个新的包libffi-de ...
- centos下安装python3.6.2
一.下载 官网地址:https://www.python.org/downloads/source/ 我下载的是最新的3.6.2rc版本 # cd /opt/ wget https://www.pyt ...
- CentOS下安装Python3.4
系统环境:CentOS 7.2 CentOS7安装Python3.4 ,让Python2和3共存 编译需要的一些包: yum -y groupinstall "Development too ...
- CentOS下安装python3.x版本
现在python都到了3.x版本,但是centos中自带的python仍然是2.7版本的,所以想把python换成3.x版本的. 但是这个地方有个坑,你要是直接编译安装了python3.x之后,估计你 ...
- CentOS下安装python3环境及pypy环境
安装前基础环境 1. win7虚拟机CentOS7.6系统 2. 网络环境通过NAT方式 3. 已经配置到yum仓库并系统自带有python2.7 安装前准备 1. python3.6.5源码包:ht ...
- 关于在centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法
3.7版本需要一个新的包libffi-devel,安装此包之后再次进行编译安装即可. #yum install libffi-devel -y#make install若在安装前移除了/usr/bin ...
- 【转载】关于在centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法
3.7版本需要一个新的包libffi-devel,安装此包之后再次进行编译安装即可. #yum install libffi-devel -y #make install 原文:https://blo ...
- centos 下安装python3.6.2
具体详情: http://www.cnblogs.com/vurtne-lu/p/7068521.html
- CentOS系统下安装python3+Django
转载:CentOS系统下安装python3+Django 1.首先用yum安装下vim,因为CentOS 7可能根本没自带完整vim,经常出现输入乱码:yum -y install vim 2.安装开 ...
随机推荐
- Python2.7-zipfile
zipfile模块,提供了基本操作后缀为“zip”的文件的接口,一般使用 ZipFile 类完成操作 1.模块方法 zipfile.is_zipfile(filename):判断 filename 是 ...
- BT5R3蛋疼的metasploit升级
刚装了BT5R3,急着想把metasploit升级,原版本是4.5.0,试了网上的各种方法,终于试到了个能成功的,再次记录一下. 系统环境:BT5 R3 1.apt-get update 2.apt- ...
- Android ListView自定义分割线 header 和footer设置没有页眉和页脚
ListView.setFooterDividersEnabled(false);//设置listview无页脚 ListView.setHeaderDividersEnabled(false);// ...
- MVC 如何在action中获取当前网站的根路径
如果基于MVC搭建的网站在IIS发布的是一个单独的端口,那么可以直接通过后面语句获得跟路径:Request.Url.GetLeftPart(UriPartial.Authority).ToString ...
- 【转】PHP 类与对象
原文:http://blog.csdn.net/e421083458/article/details/8217650 1.类与对象 对象:实际存在该类事物中每个实物的个体.$a =new User() ...
- 从源代码解释Android事件分发机制
在ViewRootImpl的setView方法中.用户的触摸按键消息是体如今窗体上的.而windowManagerService则是管理这些窗体,它一旦接收到用户对窗体的一些触摸按键消息,会进行对应的 ...
- 微服务 Rpc和Rest协议
原文:https://blog.csdn.net/king866/article/details/54174665 接口调用通常包含两个部分,序列化和通信协议.常见的序列化协议包括json.xml.h ...
- EZ 2018 04 21 NOIP2018 模拟赛(九)
终于停止了掉Rating的浪潮! 猥琐的链接 这次200分才Rank10,而且很多人并列 庆幸T2最后20分钟发现期望的算法打错了,然后拿到了50pts,250收场 T1 水题*1 这道题不仅做过,而 ...
- Kubernetes学习之路(二十二)之Pod资源调度
目录 Pod资源调度 1.常用的预选策略 2.优选函数 3.节点亲和调度 3.1.节点硬亲和性 3.2.节点软亲和性 4.Pod资源亲和调度 4.1.Pod硬亲和度 4.2.Pod软亲和度 4.3.P ...
- UI自动化环境准备
1.安装专业版pycharm,只要是填写了licensed的都是专业版本的pycharm 2.python中安装好selenium包 pip install selenium 3.python中安装 ...