如何在ubuntu 16.04上以非root用户身份安装python 3.4,并从已安装的python 3.4创建virtualenv

时间:2016-09-16 15:00:45

标签: python ubuntu virtualenv python-3.4 ubuntu-16.04

情况:我正在尝试使用PyCharm IDE在项目上安装pyside,但是它表示它不支持默认安装在ubuntu 16.04上的python 3.5。它确实支持python 2.7,但我宁愿不使用python 2启动一个新项目。

我做了什么: 所以我下载了python 3.45,将其解压缩,并且使用以下命令成功将其安装到目录中:

`cd /path/to/extracted/python34
./configure --prefix=/path/to/install/dir
make
make install`

下一步是从新安装的python 3.4中创建一个virtualenv,以便它有自己的pip和其他工具,所以我运行以下代码:

cd /path/to/virtualenv/script ./virtualenv.py --python=/path/to/python34 /path/to/desired/virtualenv/dir

不幸的是,

失败了

出了什么问题: 我尝试使用新安装的Python 3.4来创建virtualenv,但是当我这样做时遇到了错误。无论我是使用内置的PyCharm工具创建virtualenv,还是使用virtualenv脚本的下载源,结果都是一样的。但是,我能够发现第一个错误是关于zlib,我尝试应用此处找到的解决方案:building Python from source with zlib support

通过以管理员身份登录并通过以下方式安装zlib1g-dev来解决zlib问题:

sudo apt-get install zlib1g-dev

我还从解压缩的Python 3.4源代码的Modules / Setup文件中取消注释以下行

zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz

但即使解决了zlib问题,我现在遇到了以下错误日志,在尝试使用刚安装的python 3.4创建virtualenv时:

`

Installing setuptools, pip, wheel...
  Complete output from command /home/work/Documents...gQtEnv/bin/python3.4 - setuptools pip wheel:
  Traceback (most recent call last):
  File "<stdin>", line 7, in <module>
  File "/home/work/Documents/programming/tools/virtualenv-15.0.3/virtualenv_support/pip-8.1.2-py2.py3-none-any.whl/pip/__init__.py", line 16, in <module>
  File "/home/work/Documents/programming/tools/virtualenv-15.0.3/virtualenv_support/pip-8.1.2-py2.py3-none-any.whl/pip/vcs/subversion.py", line 9, in <module>
  File "/home/work/Documents/programming/tools/virtualenv-15.0.3/virtualenv_support/pip-8.1.2-py2.py3-none-any.whl/pip/index.py", line 30, in <module>
  File "/home/work/Documents/programming/tools/virtualenv-15.0.3/virtualenv_support/pip-8.1.2-py2.py3-none-any.whl/pip/wheel.py", line 39, in <module>
  File "/home/work/Documents/programming/tools/virtualenv-15.0.3/virtualenv_support/pip-8.1.2-py2.py3-none-any.whl/pip/_vendor/distlib/scripts.py", line 14, in <module>
  File "/home/work/Documents/programming/tools/virtualenv-15.0.3/virtualenv_support/pip-8.1.2-py2.py3-none-any.whl/pip/_vendor/distlib/compat.py", line 66, in <module>
ImportError: cannot import name 'HTTPSHandler'
----------------------------------------
...Installing setuptools, pip, wheel...done.
Traceback (most recent call last):
  File "./virtualenv.py", line 2327, in <module>
    main()
  File "./virtualenv.py", line 711, in main
    symlink=options.symlink)
  File "./virtualenv.py", line 944, in create_environment
    download=download,
  File "./virtualenv.py", line 900, in install_wheel
    call_subprocess(cmd, show_stdout=False, extra_env=env, stdin=SCRIPT)
  File "./virtualenv.py", line 795, in call_subprocess
    % (cmd_desc, proc.returncode))
OSError: Command /home/work/Documents...gQtEnv/bin/python3.4 - setuptools pip wheel failed with error code 1`

我想弄清楚的是什么: 这就是我现在所处的位置。 我想从源代码构建的python的非root和非系统安装中创建virtualenv。我知道我可以摆弄并尝试安装我猜的错误在所有错误消失之前成为必要的包,但是我不喜欢willy nilly安装,特别是root。我假设必须有一种方法来安装没有root访问权限的python,并使用它创建一个虚拟环境。也许确定必要的软件包是什么,下载所有软件包,构建它们,并将它们添加到我本地用户的系统路径中?不幸的是,我对如何做其中一半只有一个模糊的想法。任何指导将不胜感激。

感谢所有花时间阅读并试图提供解决方案的人。希望能够解决这个问题。

0 个答案:

没有答案