pythoncythondistutilsstatic-importcimport

How do you get cimport to work in Cython?


I have a directory structure as so:

/my_module

init.py

A/

  __init__.py

  a.pyx

B/

  __init__.py

  b.pyx

In b.pyx I want to cimport functions from A.a. A regular python import works, but a cimport always fails.

Also, I'm compiling A/ and B/ separately because I couldn't figure out how to put a setup.py in the top module.

Can anyone help here?


Solution

  • You have to create a cython declaration file, a .pxd

    It shall contain only declarations of classes and functions that you want to import.