I have a warning message about some dll which ppackage tells me are missing. I can’t see why I get this message
I am concerned with the 3 last warnings.
At run time the panda log file tells things about the virtual file system and I assume (but I might be wrong) that it has to do with the missing dll.
The log file states the following “ImportError: DLL load failed: Le module spécifié est introuvable.” where “Le module spécifié est introuvable” means “the specified module cannot be found”.
The package definition file (.def file) does not mention these specific dlls.
I’m guessing that something in your cmmclient.Logger import is in turn importing a compiled module that depends on the named OpenCV DLL’s, which means those DLL’s will be required to load Logger successfully.
For whatever reason, ppackage was unable to find them (though it could figure out that they were needed), so it issued a warning and continued anyway. Perhaps they need to be on your PATH before you run ppackage.
Or, perhaps it is not actually these three DLL’s that are causing the error, but some different DLL’s that ppackage couldn’t figure out. In any case, it is probably the case that some dependent DLL wasn’t found and needs to be added. The solution is to determine which DLL it is, and add it to the PATH, and if necessary, explicitly name it in the .pdef file.
I suspect the opencv DLLs are a red herring. I’ve most often seen problems like this with the runtime when there’s a version mismatch of the system DLLs, particularly with msvcrt.lib and its friends. These are hard to track down because it’s usually a dependency chain, so the DLL that appears to be failing is only doing so because it depends on another DLL, and that DLL depends on another, etc., until eventually it gets to the real problem. I’ve only ever been able to eventually figure out what’s gone wrong with the dependency walker (http://www.dependencywalker.com/) and a whole bunch of digging around.
Am I correct that you’re building at least some of Panda yourself? I’m guessing that’s the case because in the logs I noticed:
Does the problem go away if you run with a pure prebuilt distribution from panda3d.org? If so then it’s almost certainly the case that something on your system was built against a VC runtime DLL that can’t later be found at execution time.
This whole mechanism needs better error checking and logging, so unfortunately it’s surprisingly fragile and difficult to figure out what’s gone wrong when it fails.