Cython设置错误:无法找到pgen,没有编译正式语法?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (888)

为了安装cython(对于python 2.7,windows 8.1),以.zip格式下载,解压缩整个文件并运行setup.py。因此,python shell显示:无法找到pgen,而不是编译正式语法。

问题是什么以及如何解决?

提问于
用户回答回答于

相关代码setup.py

 pgen = find_executable(
        'pgen', os.pathsep.join([os.environ['PATH'], os.path.join(get_python_inc(), '..', 'Parser')]))
    if not pgen:
        print ("Unable to find pgen, not compiling formal grammar.")

Cython/Parser/Grammar

    else:
        parser_dir = os.path.join(os.path.dirname(__file__), 'Cython', 'Parser')
        grammar = os.path.join(parser_dir, 'Grammar')
        subprocess.check_call([
            pgen,
            os.path.join(grammar),
            os.path.join(parser_dir, 'graminit.h'),
            os.path.join(parser_dir, 'graminit.c'),
            ])

第一行Cython/Parser/语法

# Grammar for Cython, based on the Grammar for Python 3

# Note: This grammar is not yet used by the Cython parser and is subject to change.

这句话似乎表明即使皮根是可用的,它生成的代码不会被使用。

用户回答回答于

尝试从pip安装Cython。Windows-打开Python文件夹,按Shift+右键单击,选择“在这里打开命令promt”

扫码关注云+社区

领取腾讯云代金券