http://www.jianshu.com/p/6199b5c26725

文/FiveStrong(简书作者)
原文链接:http://www.jianshu.com/p/6199b5c26725
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

安装python3.5

安装步骤如下 :
1 准备编译环境(环境如果不对的话,可能遇到各种问题,比如wget无法下载https链接的文件)

yum groupinstall 'Development Tools'
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel

2 下载 Python3.5代码包

wget  https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tar.xz

3 编译

tar Jxvf  Python-3.5.0.tar.xz
cd Python-3.5.0
./configure --prefix=/usr/local/python3
make && make install

4 设置环境变量

echo 'export PATH=$PATH:/usr/local/python3/bin' >> ~/.bashrc

5 或者可以直接替换python2

rm   /usr/bin/python
ln -sv /usr/local/bin/python3.5 /usr/bin/python
这样做的目的是在系统任意目录敲入python调用的是python3的命令,而非系统默认2.6.6的
但是这样同时这会导致依赖python2.6的yum不能使用,因此还要修改yum配置。

6 更新yum配置。

ll /usr/bin | grep python
这时/usr/bin目录下面是包含以下几个文件的(ll |grep python),其中有个python2.6,只需要指定yum配置的python指向这里即可
vim /usr/bin/yum
通过vim修改yum的配置
#!/usr/bin/python改为#!/usr/bin/python2.6,保存退出。
完成了python3的安装。

安装pip

pip是根据官网wiki安装的,地址点击这里
1,安装setuptools。pip安装前需要先安装setuptools,在上面的页面中给出了下载地址。下载并执行即可:

wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py
python ez_setup.py

2 我用上面的方法没有成功,网上找到了这个:
先下载get-pip.py,

If [setuptools](https://pypi.python.org/pypi/setuptools) is not already installed, get-pip.py will install [setuptools](https://pypi.python.org/pypi/setuptools) for you.
Beginning with pip v1.5.1, get-pip.py stopped requiring setuptools to be installed first. wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py

pip安装后执行pip依然无法找到命令,细看pip安装的提示信息发现安装到了python3下面,这里肯定不是系统的classpath目录。
如下:

 Installing pip3 script to /var/python3/bin
Installing pip3.3 script to /var/python3/bin
Installing pip script to /var/python3/binSuccessfully installed pip

解决办法就是简单地建立连接到系统的classpath目录之一:
mv /usr/bin/pip /tmp
ln -sv /usr/local/python3/bin/pip /usr/bin/pip
3,按照pip的说法,最后执行

To upgrade an existing [setuptools](https://pypi.python.org/pypi/setuptools)run
pip install -U setuptools

悲剧没成功。。。

安装git:

执行并根据提示一路next,安装完成后执行git --help测试是否安装成功。需要说明git的安装不是必须的(最终我也没用,因为在国内呵呵),除非你希望始终保持最新发布的django代码,否则可以忽略。

 yum install git

安装django

有了pip,这件事变得非常简单,只需要一个命令即可。需要说明的是和上面的问题一样,你需要在系统classpath目录下建立到django-admin.py的连接。

pip install django
ln -s /var/python3/lib/python3.3/site-packages/django/bin/django-admin.py /usr/bin/django-admin.py
#这里视你的django安装位置而定——一般是python的site-packages下。

如果pip没法执行,直接去官方下载Django最新版,编译安装。
它会安装在你的python3目录里面,所以需要配置环境变量。

执行后django安装完成。下面建立一个演示的website,参考来自django的指导,通过执行命令

 django-admin.py startproject mysite

建立一个名为mysite的工程其结构如下:

mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
wsgi.py
外层mysite:仅仅是工程的容器,叫什么名字没关系。
manage.py:一个命令行的工具类用于和你的工程交互。
内层mysite:实际的python package。
__init__.py:空文件,它的存在是为了表明这是一个python package。 settings.py: Django的配置文件。
urls.py:简单的说就是用于url派发的配置。
wsgi.py: 用于和wsgi server连接的接入点,商用部署时用到的server。

到现在django的安装和工程已经建立,可以启动django开发的服务器了。django警告这个内置的server只适合开发用而非商用是没有安全保护的。执行以下命令启动django:

python manage.py runserver

这时候如果你是直接在linux主机上访问的那么已经可以通过localhost:8000来访问了,如果和我一样通过vmvare启动的linux并想在自己的物理机上访问暂时是行不通的。
可以通过命令

python manage.py runserver 0.0.0.0:8000

使django server监听public ip以便从外面访问

修复python2

如果不小心误删除了/usr/bin/python2这个文件,导致yum不能使用。
解决办法——重装相关的rpm文件。
所有的rpm文件可以在网易提供的景象中下载,应该是国内比较快的地方了,地址:http://mirrors.163.com/centos/6.5/os/i386/Packages/
rpm列表如下:
python-2.6.6-29.el6.x86_64.rpm
python-devel-2.6.6-29.el6.x86_64.rpm
python-iniparse-0.3.1-2.1.el6.noarch.rpm
python-setuptools-0.6.10-3.el6.noarch.rpm
python-urlgrabber-3.9.1-8.el6.noarch.rpm
rpm-python-4.8.0-19.el6.x86_64.rpm
yum-3.2.29-22.el6.centos.noarch.rpm
yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
python-pycurl-7.19.0-8.el6.x86_64.rpm

注意rpm命令,必须要追加 –replacepkgs 参数,强制其重新安装,否则rpm会报告说package已安装。

rpm -Uvh --replacepkgs ***.rpm

至此打完收工:)

CentOS 6 安装 Python3.5以及配置Django的更多相关文章

  1. centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'

    centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法 3.7版本需要一个新的包libffi-de ...

  2. CentOS下安装Python3

    目录 CentOS下安装Python3 下载 解压 配置 gcc sudo权限 vim 编译 安装 添加软链接 pip安装出错,找不到SSL 安装virtualenv和virtualenvwrappe ...

  3. 【vps】Centos 7安装python3.8.5

    [vps]Centos 7安装python3.8.5 前言 由于服务器的搬迁,从香港搬到了大陆,原来的香港服务器即将到期,所以趁着大陆服务器在备案的时候,将新服务器的配置先配置一下.这篇文章就是分享C ...

  4. CentOS/RedHat安装Python3

    CentOS/RedHat安装Python3 摘自:https://blog.csdn.net/mvpboss1004/article/details/79377019 CentOS/RedHat默认 ...

  5. 超详细的 Linux CentOS 编译安装python3

    前言: 安装完CentOS7后,执行#Python与#python -V,看到版本号是2.6,而且之前写的都是跑在python3.X上面的,3.X和2.X有很多不同,在这里我就不弊述两者之间的区别了新 ...

  6. 在CentOS上安装Python3的三种方法

    Centos7默认自带了Python2.7版本,但是因为项目需要使用Python3.x你可以按照此文的三个方法进行安装. 注:本文示例安装版本为Python3.5, 一.Python源代码编译安装 安 ...

  7. CentOS 7安装Python3.5

    CentOS 7下安装Python3.5 •安装python3.5可能使用的依赖 yum install openssl-devel bzip2-devel expat-devel gdbm-deve ...

  8. centos 7 安装 python3.6 python3 安装步骤以及pip pip3安装挂载

    首先去python官网下载python3的源码包,网址:https://www.python.org/ 或者直接wget下载 wget https://www.python.org/ftp/pytho ...

  9. (转)CentOS 7 安装 Python3、pip3

    原文:https://ehlxr.me/2017/01/07/CentOS-7-%E5%AE%89%E8%A3%85-Python3%E3%80%81pip3/ CentOS 7 默认安装了 Pyth ...

随机推荐

  1. openjudge-回文串判断【递归】

    回文串判断 总时间限制: 1000ms 内存限制: 65536kB 描述 任意给定一个非空的字符串,判断其是否是回文串.回文串是指正向看和反向看均相等的串,如AbcDcbA和cDDc.如果是回文串,则 ...

  2. [Android设计模式]Android退出应用程序终极方法

    如何干净彻底地退出Android应用程序,是很多开发者的心头痒.如何干净地关闭所有已打开的Activity? 如何关闭指定的Activity? 如何关闭一类Activity? 这里,我们提出一种通过实 ...

  3. oracle 变量赋值

    在oracle 中使用 select 字段 into 变量 from 表 where 条件 这种方法给变量赋值时和MSSQL的行为有比较大区别. 在MSSQL中如果在该表中未检索到任何行,则变量的值保 ...

  4. oracle自动备份

    因为一个项目上马,需要设置自动备份,网上搜索了一下,windows平台下基本上是通过系统的任务计划完成的,于是我也写了一下,无非就是exp xxxx.dmp,文件名是用的日期加时间,精确到秒,一小时备 ...

  5. ajax同步,异步

    传输数据 同步:第一条传过去,对方接收到反馈以后,再传第二条; 异步:第一条传过去,不管对方有没有收到,继续传第二条. ajax(默认异步 async:true) 同步:执行完ajax内部代码,才执行 ...

  6. 十个 MongoDB 使用要点

    转自: 十个 MongoDB 使用要点    从 mongodb 阶段性技术总结 中抽取并整理了对大家有帮助的十个要点:   1.mongodb 表名和字段名统一用小写字母 mongodb 是默认区分 ...

  7. Zabbix agent on Microsoft Windows

    1.在Windows上创建目录: C:\Windows\zabbix\ 2.下载安装包并解压到新建的目录 3.下载地址:http://www.zabbix.com/downloads/3.0.0/za ...

  8. C++ 11中的右值引用以及std::move

    看了很多篇文章,现在终于搞懂了C++ 中的右值以及std::move   左值和右值最重要的区别就是右值其实是一个临时的变量 在C++ 11中,也为右值引用增加了新语法,即&&   比 ...

  9. [tty与uart]UART中的硬件流控RTS与CTS

    转自:http://blog.csdn.net/zeroboundary/article/details/8966586 在RS232中本来CTS 与RTS 有明确的意义,但自从贺氏(HAYES ) ...

  10. SVN在团队项目中的使用技巧:[2]Tag操作

    SVN是Subversion的简称,是一个开放源代码的版本控制系统 本节讲述SVN使用中的TAG操作 文中若有错误或不足之处,欢迎留言指正   工具/原料 电脑 SVN 方法/步骤 1.认识SVN中T ...