DLL Load failure for matploltlib._png

Thanks Christoph, thanks for the help.

However I found the issue.
The issue is that somehow matplotlib_release variant linked to the debug lib of libpng.
And so on a non-developer machine, which dosent have msvcr90d.dll (debug crt), DLL Load fails.

So now I have another question:

I have built the static libs of freetype, libpng (and zlib which is required by libpng) from source
And I mention the paths of these static libs in setupext.py (by modifying “basedir”) while building matplotlib.

Now when matplotlib builds, and generates a _png.pyd, will it still need the static libs to be present in the location where the _png.pyd is present?
What I understand is that it shouldn’t since it is a static library and should be built into the binary.

Why I am asking this is because I am unable to build the libpng DLLs (for some reason I dont know).
So I have to go forward with the static lib approach.



I built matplotlib1.2.0 with python3.2 on Windows7 from source.

I built the libpng and freetype libs and linked them statically to


Everything works fine on my machine, I can run the matplotlib examples etc

But on a new Win7 machine(with the exact same configuration as mine,

except a few softwares), I get the following error when i try to import

png module like this:

import matplotlib._png

ImportError: DLL load failed: The application has failed to start

because its side-by-side configuration is incorrect. Please see the

application event log or use the command-line sxstrace.exe tool for more


I used the dependency walker and found that pyd_ DLL was indeed having

issues during load.

What could be the reason. Surprisingly it works all fine on my machine.



Assuming this is 32 bit Python, install the Microsoft Visual C++ 2008

Redistributable Package (x86) <from


Besides that, look for extra msvcp90.dll or msvcr90.dll files in PATH

(for example MikteX is known for that) and resolve conflicts.


Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester

Wave™: Endpoint Security, Q1 2013 and “remains a good choice” in the

endpoint security space. For insight on selecting the right partner to

tackle endpoint security challenges, access the full report.


Matplotlib-users mailing list




On Fri, Mar 8, 2013 at 3:46 PM, Tejashri Kandolkar <tejashri.kandolkar@…287…> wrote:

On Thu, Mar 7, 2013 at 10:53 PM, Christoph Gohlke <cgohlke@…2143…> wrote:

On 3/7/2013 8:39 AM, Christoph Gohlke wrote:

On 3/7/2013 6:00 AM, Tejashri Kandolkar wrote: