Dan*_*l F 5 upgrade python ubuntu pip apt
来自 AWS 的 Ubuntu 14.04 附带了 python 2.7.6。
在对映像执行任何其他操作之前,我通过发出以下命令升级到 2.7.10
sudo apt-get -y install build-essential checkinstall libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev
mkdir -p ~/python/2.7.10
cd ~/python/2.7.10
wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz
tar xzf Python-2.7.10.tgz
cd Python-2.7.10
sudo ./configure
sudo make install
cd ~/
Run Code Online (Sandbox Code Playgroud)
我使用make install而不是sudo make altinstall因为我希望它成为系统上唯一的 Python 2.7,即默认版本。
我知道文档中有警告
警告:make install 可以覆盖或伪装 python 二进制文件。因此建议使用 make altinstall 而不是 make install,因为它只安装 exec_prefix/bin/pythonversion。
我应该坚持make altinstall吗?那我如何使它成为我的默认值python?
我如何处理其他库,比如pip install --upgrade --force-reinstall pyopenssl编译一些 C 代码的 ?为了编译 C 代码,我需要sudo apt-get install python-dev获取头文件。这个假设是错误的吗?我对此有点困惑,因为我猜python-devrepo 中的 2.7.6 是基于 2.7.6,如果有任何意义的话。
此外,由于我在 virtualenv 中运行 pip,pip install --upgrade --force-reinstall pyopenssl在那里发布时我确实收到OSError: [Errno 13] Permission denied: '/usr/local/lib/python2.7/dist-packages/pyOpenSSL-0.15.1.dist-info'错误,这很可能是因为我没有运行 sudo(但作为默认用户),以便将库安装到虚拟环境。这是什么原因造成的?如果我不升级而是将 Python 保留在 2.7.6,则不会发生这种情况
最后一个问题:一旦我通过编译手动升级 python,我是否不允许在 repo 中使用 python-* 包(apt-get python-*)?
在此先感谢您的帮助。
| 归档时间: |
|
| 查看次数: |
2980 次 |
| 最近记录: |