19

I am running pygame (for Python) on Windows. I have some .pyo files and some .pyd files. I have another script for somewhere else that is trying to import one of the .pyd files as a module but I keep getting the error that no such module exists.

Do .pyo files have issues importing .pyd files as modules? What can I do to solve this issue?

Yanki Twizzy
  • 7,771
  • 8
  • 41
  • 68

1 Answers1

36

It's typically because of one or more of the following:

  • The .pyd is not in your current path (you said it was in the same folder so that should not be the problem)
  • A DLL the .pyd depends on is not in your current path. Locate the missing DLL's using depends.exe or its modern rewrite and either copy these dll's to the same folder or add the containing directories to your system path
  • You're using a debug version of python. Then the module must be renamed from xyz.pyd to xyz_d.pyd.
Max
  • 1,068
  • 1
  • 10
  • 15
Jonatan
  • 3,752
  • 4
  • 36
  • 47
  • 5
    Exactly the third one. I compiled the dll manually without the suffix of '_d' in a debug build, wasting half a day to figure out the import error! – Joey.Z Feb 13 '15 at 15:36
  • 1
    It was the second bullet for me. I had to install [Dependencies by lucasg](https://github.com/lucasg/Dependencies) as recommended [in another answer](https://stackoverflow.com/a/36244483/1048186) since depends.exe gives many false positives since it doesn't recognize API-sets. – Josiah Yoder Aug 27 '19 at 17:28
  • Life saver.. I wasted a day of frustration. It was the deps that where instantly solvable by lucasg info. – Max Oct 12 '19 at 12:42