Python3.X.X使用Virtualenv正确设置并多次安装到/ OPT /

时间:2014-01-22 23:47:55

标签: python-3.x pycharm

我花了大约一个星期的时间尝试在我的系统上“正确”安装python python 3.x.x.这是一场相当激烈的战斗,我只是在那里面临一个我似乎无法解决的最终障碍。许多论坛讨论在各种发行版上设置Python 3.X.X,每个论坛都有不同的方法,目标,结果,错误/问题,没有明确的答案。到目前为止,我已经投入了100多个小时,并且已经用clonzilla图像破坏/重新安装了我的系统几十次。但毕竟,我已经抓住了在这个帖子中设置最终python所需的所有步骤 - 减去了我希望有人可以帮助我的最终障碍的答案:

我瞄准的最终目标是“最终的python3.x.x设置”,我将其定义为具有以下特征:

  • 具有python3.x.x的干净安装/配置。它是从源代码构建的,包含多个并排的python3.x.x.版本(例如python3.0.1,python3.2.5,python3.3.0),保留的root权限分配给每个文件夹,作为默认/ opt /目录的一部分

  • 每个安装都不会干扰系统的默认解释器,具有pip,易于安装,分发工具和virtualenv所有正确配置和工作,并且可以通过virtualenv'与不同模块隔离运行。小号

  • 每个python3.xx都在/ opt /目录中编译,安装和命名(例如python3.3.0,python3.3.1,python3.3.2),并且配置为当调用python3.xx时终端窗口或使用该版本,它不会搞砸系统的默认解释器,它的依赖/包(这个论坛上有很多论坛)

  • 每个python3.x.x都在pycharm的愚蠢简单和令人敬畏的virtualenv经理工作 - 我的最后一个障碍

以下步骤是我到目前为止的设置,它是从多个论坛编译完成以上所有内容减去最后一个障碍所必需的。两个要点是1)我正在运行Linux Mint LTS 13和2)我没有运行“sudo apt-get install python3”或任何类似的python3xxxxx的apt-get(这是故意的,原因如下)。

这些是我在全新安装Linux模型13时采取的步骤,现在已经备份了clonezilla图像以及我现在用来解决这个最后障碍的虚拟框。

第1步: 这个mega-command将下载并设置pycharm,包括程序的oracle(sun)依赖项,并将所有内容安装到/ opt /目录(即正确的位置)。我只是接受oracle的提示并完成pycharm的最终安装提示(例如接受许可,试用期等)。

  • Pycharm

    sudo add-apt-repository ppa:webupd8team/java -y && sudo apt-get update && sudo apt-get install oracle-java7-set-default -y && sudo apt-get install oracle-java7-installer -y && wget "http://download.jetbrains.com/python/pycharm-professional-3.0.2.tar.gz" && sudo mkdir /opt/Pycharm && sudo cp pycharm-professional-3.0.2.tar.gz /opt/Pycharm/ && cd /opt/Pycharm/ && sudo tar xvfz pycharm-professional-3.0.2.tar.gz && cd pycharm-3.0.2/bin && sudo sh pycharm.sh
    

第2步: 这个单一命令将下载,提取,移动,编译和安装3.3.0,包含所有必要的先前依赖项,并将python3.3.0放在/ opt /目录(正确的位置)中。

  • Python3.3.0

    sudo apt-get install build-essential libbz2-dev bzip2 zlib1g-dev sqlite3 libsqlite3-dev -y && wget http://python.org/ftp/python/3.3.0/Python-3.3.0.tgz && tar xvfz Python-3.3.0.tgz && cd Python-3.3.0 && ./configure --prefix=/opt/python3.3.0 && make && sudo make install
    

第3步: 这个单一命令将下载,提取,移动,编译和安装3.2.5,包含所有必需的依赖项,并将python3.2.5放在/ opt /目录中。

  • Python3.2.5

    wget http://www.python.org/ftp/python/3.2.5/Python-3.2.5.tgz && tar xvfz Python-3.2.5.tgz && cd Python-3.2.5 && ./configure --prefix=/opt/python3.2.5 && make && sudo make install
    

我们现在有pycharm和python3.3.0和python3.2.5的两个并行安装,它们是从源代码构建的,安装在/ opt /目录中,不会干扰系统的python2。 xx解释器或其依赖项/包。好到目前为止这是一个非常干净的设置...现在是最后的障碍。

如果我(或你)“sudo apt-get install python3-dev”从这一点开始,包括一些其他命令来设置和激活python3.x.x的virtualenv,一切似乎都有效。这意味着您可以设置多个Python3.x.x virtualenv并使用pycharm,eclipse或从终端窗口运行它们作为virtualenv或非virtualenv' s。使用内置的virtualenv管理器,Pycharm可以很容易地管理您想要的任何配置。问题是,做“sudo apt-get install python3-dev”会破坏保持python3.xx作为单独安装的全部目的,并冒着1)破坏python2.xx软件包的风险,2)安装用于python3的pip软件包。 XX进入python2.xx目录,3)限制用户只能python3.2及更低版本的能力,因为你必须将你使用的任何虚拟语言指向运行“sudo apt-get install python3-dev”的解释器“,4)分散在整个论坛的大量其他问题我本周已经调查了这一点,试图弄清楚这一切。因此,“sudo apt-get install python3-dev”或python3.x.x的任何其他apt-get都不是解决方案,因为它会导致太多问题。

此时我有一个虚拟盒图像设置的主版本,完成上述所有步骤,我继续克隆并重试从/ opt /到函数的编译解释器而不执行“sudo apt-get python3” .XXX”。关键问题'屏幕截图中显示的是此问题。我没做什么似乎允许我指向/opt/python3.xx/bin/pythonX解释器是否使用像pycharm,eclipse或终端这样的IDE。一旦我运行“sudo apt-get python3.xxx”它就会起作用 - 但当然继承了人们在论坛走下去时在网络上尖叫的所有其他噩梦。非常感谢任何帮助...

screenshot http://www.pasteall.org/pic/show.php?id=65653

我尝试获取从源代码编译的解释器的每个配置都无法允许那些python3.xx安装作为virtualenv使用,因此在终端窗口中使用像pip这样的包管理器或者用pycharm / eclipse。我已经尝试安装到主目录,更改/ opt /中的权限,制作系统链接,几乎所有内容 - 所有不涉及“sudo apt-get install python3.xxxx”...这篇文章({{3在第二步,只有当你恢复执行“sudo apt-get install python3”时才有效。

2 个答案:

答案 0 :(得分:0)

您正在寻找的是pyenv。它将管理你的python安装,并允许你安装新版本的python而不妨碍其他安装,它将工作良好的Pycharm,并不会妨碍其他python安装。它完全用bash完成,所以它没有python作为先决条件安装。

答案 1 :(得分:0)

我终于弄清楚我做错了什么。在安装之前,我没有阅读make报告并修复其他依赖项。主要问题是包含_pl的依赖关系,这是pip与python3一起使用所必需的。

我现在有了“终极python设置”