1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
PYTHON setup.py build_ext --inplace
######## setup.py ###########
from distutils.core import setup
from Cython.Build import cythonize
import Cython.Compiler.Scanning
Cython.Compiler.Scanning.trace_scanner = 1
setup(ext_modules=cythonize("*.pyx"))
try:
from importlib.util import spec_from_file_location, module_from_spec
except ImportError:
# Py<=3.4
# Try to import from the current directory.
import os, sys
sys.path.insert(0, os.getcwd())
import simple
else:
# Py3.5+
import glob
ext_files = glob.glob("simple*.so") + glob.glob("simple*.pyd")
assert ext_files
spec = spec_from_file_location('simple', ext_files[0])
simple = module_from_spec(spec)
spec.loader.exec_module(simple)
assert simple.test() == 123
######## simple.pyx ###########
def test():
return 123
|