Comment 10 for bug 208433

Revision history for this message
The Amigo (theamigo) wrote :

Running on WinXP, I did the following:
 - uninstalled Inkscape 0.45.1
 - searched entire filesystem for "libpng". Deleted the only two matches: "libpng12.dll" and "libpng13.dll" in common files\gtk\2.0\bin
 - installed Inkscape-0.46pre4-2.win32.exe

Inkscape 0.46pre4-2 launches without any complaints.

Further poking and prodding reveals that:
 - Inkscape 0.46pre4-2's included libpng12.dll and libpng13.dll are of different sizes, however:
    - having two copies of libpng12.dll (one named 12 and one named 13) allows Inkscape to launch
    - having two copies of libpng13.dll (one named 12 and one named 13) also allows Inkscape to launch
 - replacing libpng12.dll with some other random dll produces the error "The procedure entry point png_convert_from_time_t could not be located in the dynamic link library libpng12.dll"
 - replacing libpng13.dll with some other random dll produces the error "The procedure entry point png_create_info_struct could not be located in the dynamic link library libpng13.dll"

Thus it appears that Inkscape looks for some function(s) in libpng12 and other function(s) in libpng13, but all of those functions are present in both libraries. That is, at least the functions used when the app is first launched.

The short-term fix of packaging both dlls appears to work fine.