Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python/Linux-以非root用户身份手动安装httplib2_Python_Linux_Pip_Setup.py_Httplib - Fatal编程技术网

Python/Linux-以非root用户身份手动安装httplib2

Python/Linux-以非root用户身份手动安装httplib2,python,linux,pip,setup.py,httplib,Python,Linux,Pip,Setup.py,Httplib,我试图在Linux机器上以非root用户的身份手动安装httplib2。我手动执行此操作的原因是我没有安装pip的权限。我从本地机器(Mac)上下载了httplib2-0.9.2.tar.gz文件,并使用scp将其传输到Linux机器上 提取tar.gz文件后,我运行了以下命令: [me@host ~]$ cd httplib2-0.9.2 [me@host httplib2-0.9.2]$ ls MANIFEST.in PKG-INFO python2 python3 setup.cf

我试图在Linux机器上以非root用户的身份手动安装httplib2。我手动执行此操作的原因是我没有安装pip的权限。我从本地机器(Mac)上下载了httplib2-0.9.2.tar.gz文件,并使用scp将其传输到Linux机器上

提取tar.gz文件后,我运行了以下命令:

[me@host ~]$ cd httplib2-0.9.2
[me@host httplib2-0.9.2]$ ls
MANIFEST.in  PKG-INFO  python2  python3  setup.cfg  setup.py
[me@host httplib2-0.9.2]$ python setup.py install
running install
error: can't create or remove files in install directory

The following error occurred while trying to add or remove files in the
installation directory:

    [Errno 13] Permission denied: '/usr/lib/python2.6/site-packages/test-easy-install-50310.write-test'

The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:

    /usr/lib/python2.6/site-packages/

Perhaps your account does not have write access to this directory?  If the
installation directory is a system-owned directory, you may need to sign in
as the administrator or "root" account.  If you do not have administrative
access to this machine, you may wish to choose a different installation
directory, preferably one that is listed in your PYTHONPATH environment
variable.

For information on other options, you may wish to consult the
documentation at:

  http://peak.telecommunity.com/EasyInstall.html

Please make the appropriate changes for your system and try again.
因为它说如果我不是根用户,我需要通过--install dir在不同的目录中安装,所以我运行了:

[me@host httplib2-0.9.2]$ python setup.py install --install-dir /home/directory/me/
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
   or: setup.py --help [cmd1 cmd2 ...]
   or: setup.py --help-commands
   or: setup.py cmd --help

error: option --install-dir not recognized
运行“$python setup.py--help命令”会得到以下结果:

Standard commands:
  build             build everything needed to install
  build_py          "build" pure Python modules (copy to build directory)
  build_ext         build C/C++ extensions (compile/link to build directory)
  build_clib        build C/C++ libraries used by Python extensions
  build_scripts     "build" scripts (copy and fixup #! line)
  clean             clean up temporary files from 'build' command
  install           install everything from build directory
  install_lib       install all Python modules (extensions and pure Python)
  install_headers   install C/C++ header files
  install_scripts   install scripts (Python or otherwise)
  install_data      install data files
  sdist             create a source distribution (tarball, zip file, etc.)
  register          register the distribution with the Python package index
  bdist             create a built (binary) distribution
  bdist_dumb        create a "dumb" built distribution
  bdist_rpm         create an RPM distribution
  bdist_wininst     create an executable installer for MS Windows
  upload            upload binary package to PyPI

Extra commands:
  rotate            delete older distributions, keeping N newest files
  develop           install package in 'development mode'
  setopt            set an option in setup.cfg or another config file
  saveopts          save supplied options to setup.cfg or other config file
  egg_info          create a distribution's .egg-info directory
  upload_docs       Upload documentation to PyPI
  nosetests         Run unit tests using nosetests
  alias             define a shortcut to invoke one or more commands
  easy_install      Find/get/install Python packages
  bdist_egg         create an "egg" distribution
  install_egg_info  Install an .egg-info directory for the package
  test              run unit tests after in-place build

usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
   or: setup.py --help [cmd1 cmd2 ...]
   or: setup.py --help-commands
   or: setup.py cmd --help
我应该使用什么命令作为非root用户继续安装httplib?因为这个问题完全被阻止了


提前谢谢

你在正确的轨道上。注意那条线

The installation directory you specified (via --install-dir, --prefix, or ...
在这种情况下,您需要使用
--前缀
。您还需要创建packages文件夹并将其导出到PYTHONPATH

所以这应该可以做到

INSTALL_DIR=${HOME}/.local
TREE=${INSTALL_DIR}/lib/python2.7/site-packages
mkdir -p ${TREE}
export PYTHONPATH=$PYTHONPATH:$TREE

python setup.py install --prefix=$INSTALL_DIR
我觉得很有帮助

编辑 或者您可以简单地尝试
python setup.py安装--user
。看