Running code from source that includes extension modules

Stefan Behnel stefan_ml at behnel.de
Wed Oct 2 15:15:04 EDT 2013


Michael Schwarz, 02.10.2013 17:38:
> I've just started looking into distutils because I need to write an
> extension module in C (for performance reasons) and distutils seems to be
> the most straight-forward way.
> 
> I've had success building a C file into a Python extension module using
> "python setup.py build" but I am wondering what the recommended way for
> using that module during development is. While writing Python code I'm used
> to just run the code from the source directory. But the built extension
> module's .so of course does not just end up on sys.path magically.
> 
> So how do I run my code so it will find the built extension module? Do I
> pass the output directory on the command line manually or is there some
> other solution? I would like to still be able to run the code from the
> source directory as I'm using PyCharm to edit and debug the code.

You can run

	python setup.py build_ext -i

That will build your extension module and install it right into your
package structure.

BTW, if you use Cython instead of plain C, you can use pyximport to get
on-the-fly extension module builds during development.

Stefan





More information about the Python-list mailing list