I am developing a Python Toolbox that uses a few external libraries (ogr/gdal
, matplotlib
, shapely
, reportlab
among others) which files I have directly copied in the same folder as my toolbox .py, as recommended in Esri's A simple approach for including 3rd party Python libraries with your scripts. It works just fine on my computer, but when I run this tool on another computer, I get an ImportError
. It's very likely that the libraries are the reason for that error.
<type 'exceptions.ImportError'>: DLL load failed: The specified procedure could not be found.
Moreover, I don't get the ImportError
the same way from ArcGIS10.0 or ArcGIS10.1 (10.0: only get the error without any additional message; 10.1: get the error where it worked fine in the previous version), which worries me a bit because this really looks like a singular configuration dependent problem.
How do I find the missing dependencies in my current distribution and ensure that the tool which I distribute will work on every computer with a fresh ArcGIS installation?
I have tried what I consider the usual ways to solve that problem:
- Run the script outside ArcMap to debug it but I did not get much more information.
- Use Dependency Walker to find the missing DLLs but when I try to profile ArcMap, Dependency Walker stops running.