6

我想在运行 OSX 10.8.5 的机器上安装 openstack 客户端。作为先决条件,我需要安装 pbr。所以,我做了以下

git clone git://github.com/openstack-dev/pbr.git
cd pbr
sudo python setup.py install

但我得到以下错误跟踪

Traceback (most recent call last):
  File "setup.py", line 22, in <module>
    **util.cfg_to_args())
  File "/Users/jimcgh/dev/pbr/pbr/util.py", line 241, in cfg_to_args
    pbr.hooks.setup_hook(config)
  File "/Users/jimcgh/dev/pbr/pbr/hooks/__init__.py", line 27, in setup_hook
    metadata_config.run()
  File "/Users/jimcgh/dev/pbr/pbr/hooks/base.py", line 29, in run
    self.hook()
  File "/Users/jimcgh/dev/pbr/pbr/hooks/metadata.py", line 28, in hook
    self.config['name'], self.config.get('version', None))
  File "/Users/jimcgh/dev/pbr/pbr/packaging.py", line 817, in get_version
    version = _get_version_from_git(pre_version)
  File "/Users/jimcgh/dev/pbr/pbr/packaging.py", line 776, in _get_version_from_git
    "git --git-dir=\"" + git_dir + "\" describe --always").replace(
  File "/Users/jimcgh/dev/pbr/pbr/packaging.py", line 220, in _run_shell_command
    stderr=err_location)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 679, in __init__
    errread, errwrite)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1228, in _execute_child
    raise child_exception
TypeError: must be encoded string without NULL bytes, not str

我怎样才能解决这个问题 ?

请帮忙。谢谢你

4

1 回答 1

3

这是因为来自 git repo 的构建正在开发中,并且可能存在错误。我曾经像这样从稳定版本(在 pypi 上)pip安装:pbr

sudo easy_install pip # if you don't already have pip
pip install pbr

如果您有easy_install,请pip按照教程进行操作。

如果您不想使用包管理器,例如easy_installor pip。然后您可以前往PyPI页面,并下载 tarball。只需提取 tarball 并python setup.py在包中运行pbr。但是安装pip以后会省去很多麻烦。

于 2013-09-30T06:42:40.843 回答