0

我正在学习如何将 gmpy2 与 Cython 集成。从 docs中,我得到了一个示例代码。由于我不确定发生了什么,我觉得我可以通过使用提供的示例代码来学习如何在 Cython 中使用 gmpy。

示例代码:
setup.py

   "A minimal setup.py for compiling test_gmpy2.pyx"
    
    from distutils.core import setup
    from distutils.extension import Extension
    from Cython.Build import cythonize
    import sys
    
    ext = Extension("test_gmpy2", ["test_gmpy2.pyx"], include_dirs=sys.path, libraries=['gmp', 'mpfr', 'mpc'])
    
    setup(
        name="cython_gmpy_test",
        ext_modules=cythonize([ext], include_path=sys.path)
    )

test_gmpy2.pyx

    "A minimal cython file test_gmpy2.pyx"

    from gmpy2 cimport *
    
    cdef extern from "gmp.h":
        void mpz_set_si(mpz_t, long)
    
    import_gmpy2()   # needed to initialize the C-API
    
    cdef mpz z = GMPy_MPZ_New(NULL)
    mpz_set_si(MPZ(z), -7)
    
    print(z + 3)

运行 setup.py 给我这个错误:

fatal error C1083: Cannot open include file: 'gmp.h': No such file or directory

怎么了?我如何解决它?我检查了我的 gmpy 安装。我相信它没有任何问题。

4

0 回答 0