| Cython - Usage Instructions |
| ========================== |
| |
| Building Cython extensions using distutils |
| ----------------------------------------- |
| |
| Cython comes with an experimental distutils extension for compiling |
| Cython modules, contributed by Graham Fawcett of the University of |
| Windsor (fawcett@uwindsor.ca). |
| |
| The Demos directory contains a setup.py file demonstrating its use. To |
| compile the demos: |
| |
| (1) cd Demos |
| |
| (2) python setup.py build_ext --inplace |
| |
| or |
| |
| python setup.py build --build-lib=. |
| |
| (You may get a screed of warnings from the C compiler, but you can |
| ignore these -- as long as there are no actual errors, things are |
| probably okay.) |
| |
| Try out the extensions with: |
| |
| python run_primes.py |
| python run_spam.py |
| python run_numeric_demo.py |
| |
| |
| Building Cython extensions by hand |
| --------------------------------- |
| |
| You can also invoke the Cython compiler on its own to translate a .pyx |
| file to a .c file. On Unix, |
| |
| cython filename.pyx |
| |
| On other platforms, |
| |
| python cython.py filename.pyx |
| |
| It's then up to you to compile and link the .c file using whatever |
| procedure is appropriate for your platform. The file |
| Makefile.nodistutils in the Demos directory shows how to do this for |
| one particular Unix system. |
| |
| |
| Command line options |
| -------------------- |
| |
| The cython command supports the following options: |
| |
| Short Long Argument Description |
| ----------------------------------------------------------------------------- |
| -v --version Display version number of cython compiler |
| -l --create-listing Write error messages to a .lis file |
| -I --include-dir <directory> Search for include files in named |
| directory (may be repeated) |
| -o --output-file <filename> Specify name of generated C file (only |
| one source file allowed if this is used) |
| -p, --embed-positions If specified, the positions in Cython files of each |
| function definition is embedded in its docstring. |
| -z, --pre-import <module> If specified, assume undeclared names in this |
| module. Emulates the behavior of putting |
| "from <module> import *" at the top of the file. |
| |
| |
| Anything else is taken as the name of a Cython source file and compiled |
| to a C source file. Multiple Cython source files can be specified |
| (unless -o is used), in which case each source file is treated as the |
| source of a distinct extension module and compiled separately to |
| produce its own C file. |