试图安装python库snudown,得到gperf错误

时间:2015-08-19 01:35:57

标签: python windows gperf

C:\Users\Nick\Documents\prog\python\snudown>python setup.py install
running install
running bdist_egg
running egg_info
writing snudown.egg-info\PKG-INFO
writing top-level names to snudown.egg-info\top_level.txt
writing dependency_links to snudown.egg-info\dependency_links.txt
reading manifest file 'snudown.egg-info\SOURCES.txt'
writing manifest file 'snudown.egg-info\SOURCES.txt'
installing library code to build\bdist.win-amd64\egg
running install_lib
running build_ext
Usage: gperf [options]

Options:
  -h, --help            show this help message and exit
  -i INPUT_FILE, --input=INPUT_FILE
  -o OUTPUT_DIR, --ouput=OUTPUT_DIR
  --csv
  --stat
  --minor
  --height=HEIGHT
  --width=WIDTH
Traceback (most recent call last):
  File "setup.py", line 50, in <module>
    include_dirs=['src', 'html']
  File "C:\Python27\lib\distutils\core.py", line 151, in setup
    dist.run_commands()
  File "C:\Python27\lib\distutils\dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "C:\Python27\lib\distutils\dist.py", line 972, in run_command
    cmd_obj.run()
  File "C:\Python27\lib\site-packages\setuptools\command\install.py", line 67, in run
    self.do_egg_install()
  File "C:\Python27\lib\site-packages\setuptools\command\install.py", line 109, in do_egg_install
    self.run_command('bdist_egg')
  File "C:\Python27\lib\distutils\cmd.py", line 326, in run_command
    self.distribution.run_command(command)
  File "C:\Python27\lib\distutils\dist.py", line 972, in run_command
    cmd_obj.run()
  File "C:\Python27\lib\site-packages\setuptools\command\bdist_egg.py", line 160, in run
    cmd = self.call_command('install_lib', warn_dir=0)
  File "C:\Python27\lib\site-packages\setuptools\command\bdist_egg.py", line 146, in call_command
    self.run_command(cmdname)
  File "C:\Python27\lib\distutils\cmd.py", line 326, in run_command
    self.distribution.run_command(command)
  File "C:\Python27\lib\distutils\dist.py", line 972, in run_command
    cmd_obj.run()
  File "C:\Python27\lib\site-packages\setuptools\command\install_lib.py", line 10, in run
    self.build()
  File "C:\Python27\lib\distutils\command\install_lib.py", line 111, in build
    self.run_command('build_ext')
  File "C:\Python27\lib\distutils\cmd.py", line 326, in run_command
    self.distribution.run_command(command)
  File "C:\Python27\lib\distutils\dist.py", line 972, in run_command
    cmd_obj.run()
  File "setup.py", line 35, in run
    process_gperf_file("src/html_entities.gperf", "src/html_entities.h")
  File "setup.py", line 21, in process_gperf_file
    subprocess.check_call(["gperf", gperf_file, "--ouput=%s" % output_file])
  File "C:\Python27\lib\subprocess.py", line 540, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['gperf', 'src/html_entities.gperf', '--ouput=src/html_entities.h']' returned non-zero exit status 2

你会注意到在gperf选项的打印输出中,'output'拼写错误。我已经尝试修改snudown的setup.py以使用我能想到的每个可能的组合, - output, - output,-o,但它仍然只是给了我使用消息。

我尝试了很多东西,似乎无法让它发挥作用。

另外,如果有帮助,我正在使用的gperf副本位于

c:\python27\scripts\gperf.exe

1 个答案:

答案 0 :(得分:2)

您的系统上是否安装了python模块gperf.py?我指的是这个:https://pypi.python.org/pypi/gperf

检查的一种方法:

(gperf)macbook:gperf joeyoung$ python

>>> import gperf
>>> print gperf.__file__
/Users/joeyoung/.virtualenvs/gperf/lib/python2.7/site-packages/gperf/__init__.pyc
>>> print gperf.__path__
['/Users/joeyoung/.virtualenvs/gperf/lib/python2.7/site-packages/gperf']

注意:此示例位于OS X上。使用适当的Windows命令行工具。

(gperf)macbook:gperf joeyoung$ cd /Users/joeyoung/.virtualenvs/gperf/lib/python2.7/site-packages/gperf
(gperf)macbook:gperf joeyoung$ ls -al
total 40
drwxr-xr-x   6 joeyoung  staff   204 Aug 19 04:14 .
drwxr-xr-x  14 joeyoung  staff   476 Aug 19 04:14 ..
-rw-r--r--   1 joeyoung  staff     0 Aug 19 04:14 __init__.py
-rw-r--r--   1 joeyoung  staff   184 Aug 19 04:14 __init__.pyc
-rw-r--r--   1 joeyoung  staff  7928 Aug 19 04:14 gperf.py
-rw-r--r--   1 joeyoung  staff  7656 Aug 19 04:14 gperf.pyc

我的猜测是,gperf.py的文件夹位于您的路径中,而是执行而不是gperf.exe。 您甚至可以在gperf.py的使用说明中看到拼写错误ouput

Usage: gperf.py [options]

Options:
  -h, --help            show this help message and exit
  -i INPUT_FILE, --input=INPUT_FILE
  -o OUTPUT_DIR, --ouput=OUTPUT_DIR
  --csv
  --stat
  --minor
  --height=HEIGHT
  --width=WIDTH

来源:https://pypi.python.org/pypi/gperf

如果你的系统有点,你可以尝试像这样卸载gperf.py

pip uninstall gperf

如果我们很幸运,snudown的setup.py会在gperf.exe上找到您的PATH并在gperf.py消失后使用该C:\\Users\\Nick\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\include\\stdint.h

编辑:对于评论中提到的错误,download this

<ng-include
  src="string"
  [onload="string"]
  [autoscroll="string"]>
  ...
</ng-include>
然后再试一次。