I have a Python script, I renamed the script to .pyx file. I want compile this code to a stand dll file.
I saw in this document that Cython will create a dll file, b
Is a *.pyd file the same as a DLL?
Yes, .pyd files are dll’s, but there are a few differences. If you have a DLL named
foo.pyd, then it must have a functionPyInit_foo(). You can then write Python “import foo”, and Python will search for foo.pyd (as well as foo.py, foo.pyc) and if it finds it, will attempt to callPyInit_foo()to initialize it. You do not link your .exe with foo.lib, as that would cause Windows to require the DLL to be present.Note that the search path for foo.pyd is PYTHONPATH, not the same as the path that Windows uses to search for foo.dll. Also, foo.pyd need not be present to run your program, whereas if you linked your program with a dll, the dll is required. Of course, foo.pyd is required if you want to say
import foo. In a DLL, linkage is declared in the source code with__declspec(dllexport). In a .pyd, linkage is defined in a list of available functions.
Modifying Python’s Search Path, Absolute and Relative Imports