问题描述

环境: CentOS6.5

想在此环境下使用python3进行开发,但CentOS6.5默认的python环境是2.6.6版本。 
之前的做法是直接从源码安装python3,替换掉现有的开发环境,但在随后使用过程中发现系统很多脚本依赖python2.6,直接替换会导致很多软件不正常。 
今天发现有朋友使用virtualenv搭建python3开发环境,这里记录下,也方便我以后查阅。

安装python3

安装脚本如下:

wget https://www.python.org/ftp/python/3.4.3/Python-3.4.3.tgz
tar zxvf Python-3.4..tgz
cd Python-3.4.
./configure --enable-shared --prefix=/usr/local
make && make altinstall

运行以上命令后,你可以在目录/usr/local/bin/python3.4 看到新编译的环境。

注意: 这里我们使用的是make altinstall,如果使用make install,你将会看到在系统中有两个不同版本的Python在/usr/bin/目录中。这将会导致很多问题,而且不好处理。

如果提示找不到so文件,可以添加以下变量:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

安装其它版本的python可从官网下载: https://www.python.org/

搭建python3开发环境

1、安装virtualenv,可以通过pip进行安装,命令如下:

pip install virtualenv

如果没有安装pip,可以通过以下命令安装:

yum install python-pip

2、创建虚拟环境:

virtualenv -p /usr/local/bin/python3. py34env

执行上述命令后,会在当前目录创建py34env文件夹,该文件夹即为我们创建的虚拟环境。

3、激活虚拟环境:

source py34env/bin/activate

3.1、在虚拟环境中安装ipython

pip install ipython

如果安装过程中提示如下错误:

Can't connect to HTTPS URL because the SSL module is not available. - skipping 

请安装以下库:

yum install openssl-devel 

然后重新编译安装Python:

./configure --prefix=/usr/local &&  make && make altinstall  

3.2、在虚拟环境中启动ipython:

ipython

4、退出虚拟环境

deactivate                             

其它

CentOS 6下使用 python3.6的pyenv 问题

1、在操作系统中安装zlib和bz2相关库

yum -y install bzip2 bzip2-devel ncurses openssl openssl-devel openssl-static xz lzma xz-devel sqlite sqlite-devel gdbm gdbm-devel tk tk-devel libffi-devel

2、编译

export CFLAGS="-I/usr/include"
export LDFLAGS="-L/usr/lib64"
export LD_LIBRARY_PATH=/usr/lib64
make distclean
./configure --enable-optimozations --enable-shared --prefix=/usr/local
make -j
sudo make altinstall

3、使用

/usr/local/python/bin/pyvenv py36env
source ~/env/py36env/bin/activate

本文github地址:

https://github.com/mike-zhang/mikeBlogEssays/blob/master/2015/20150607_使用virtualenv搭建python3开发环境.md

欢迎补充

使用virtualenv搭建python3开发环境的更多相关文章

  1. Windows使用virtualenv搭建flask开发环境

    virtualenv: VirtualEnv用于在一台机器上创建多个独立的Python虚拟运行环境,多个Python环境相互独立,互不影响,它能够: 在没有权限的情况下安装新套件 不同应用可以使用不同 ...

  2. 使用virtualenv搭建python3的环境

    转:http://blog.csdn.net/liuchunming033/article/details/46008301 转:http://www.jb51.net/article/85527.h ...

  3. Python3笔记002 - 1.2 搭建python开发环境

    第1章 认识python 1.2 搭建python开发环境 1.2.1 python开发环境概述 python开发环境常见的操作系统: Windows Mac OS Linux 1.2.2 安装pyt ...

  4. Sublime text 3搭建Python开发环境及常用插件安装 转载

    Sublime text 3搭建Python开发环境及常用插件安装 一.环境准备 1.官方网站地址 2.Windows 10 3.Sublime Text 3 + 官网购买license(Just a ...

  5. Ubuntu系统下搭建Python开发环境

    之前演示了在Windows中安装Pycharm,很简单.下面介绍一下如何在Ubuntu中安装Pycharm 1.更新Python至3.5.1,执行以下命令: sudo add-apt-reposito ...

  6. AI应用开发实战 - 从零开始搭建macOS开发环境

    AI应用开发实战 - 从零开始搭建macOS开发环境 本视频配套的视频教程请访问:https://www.bilibili.com/video/av24368929/ 建议和反馈,请发送到 https ...

  7. 在 ubuntu18.04 中搭建 Django 开发环境

    在Ubuntu 18.04 安装 python3.pip3.pycharm,搭建 Django 开发环境. 1.安装 python3 pip3 sudo apt-get install python3 ...

  8. 搭建 MobileNet-SSD 开发环境并使用 VOC 数据集训练 TensorFlow 模型

    原文地址:搭建 MobileNet-SSD 开发环境并使用 VOC 数据集训练 TensorFlow 模型 0x00 环境 OS: Ubuntu 1810 x64 Anaconda: 4.6.12 P ...

  9. Pycharm搭建Django开发环境

    Pycharm搭建Django开发环境 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们大家都知道Django是python都一个web框架,因此大家需要自行安装python环境 ...

随机推荐

  1. .net的简易多线程处理

    这篇文章是对几年前写的<Task及其异常处理的若干事项>的一些狗尾续貂的补充. 更简单的写法 几年前写的那篇文章很详细地描述了.net用Task对线程进行封装的相关技术.开一个新的线程去执 ...

  2. 背后的故事之 - 快乐的Lambda表达式(二)

    快乐的Lambda表达式 上一篇 背后的故事之 - 快乐的Lambda表达式(一)我们由浅入深的分析了一下Lambda表达式.知道了它和委托以及普通方法的区别,并且通过测试对比他们之间的性能,然后我们 ...

  3. javascript中的Function和Object

    写的很好,理解了很多,特此转发记录 转自:http://blog.csdn.net/tom_221x/archive/2010/02/22/5316675.aspx 在JavaScript中所有的对象 ...

  4. Java发展历史

    1991年1月 Sun公司成立了Green项目小组,专攻智能家电的嵌入式控制系统 1991年2月 放弃C++,开发新语言,命名为"Oak" 1991年6月 JamesGosling ...

  5. 我为NET狂~群福利:逆天书库

    我为NET狂-官方群① 238575862 爱学习,爱研究,福利不断,技能直彪~~ 最近更新:2016-08-30,欢迎补充 暂缺PDF: │ SQL Server 2012 Analysis Ser ...

  6. UML类图与面向对象设计原则

    1. 引言     从大一开始学习编程,到如今也已经有两年了.从最初学习的Html,Js,JaveSe,再到JavaEE,Android,自己也能写一些玩具.学习过程中也无意识的了解了一些所谓的设计模 ...

  7. Log4net入门(帮助类篇)

    在前几篇Log4net入门文件的讲述过程中,我们在使用log4net的类中都要编写如下一行代码: private static log4net.ILog log = log4net.LogManage ...

  8. 压缩SWF文件大小!减少40%体积!

     使用FlashBuild作为IDE的痛苦是显著的!如果开发的项目比较大,那么卡顿.崩溃.白屏是常事,使用别的IDE开发如Sublime.FlashDevelop.IDEA等,然后再用mxmlc编译出 ...

  9. 批量Shink所有日志或数据文件

    近期,因磁盘空间问题,当执行常规性维护如碎片整理等后会报磁盘空间不足警告,因条件又无法及时添加磁盘空间,这时候不得不对LOG文件做收缩,如果遇到库比较多的实例上,一个一个来却是比较麻烦,可通过如下SQ ...

  10. SharePoint 2103 Check user permission on list

    一.需求: check user 对SharePoint list 的permission 代码如下: private static string GetListPermission(SPList l ...