On Thu, Feb 16, 2012 at 05:40, Konovalov, Vadim (Vadim)** CTR **
<vadim.konova...@alcatel-lucent.com> wrote:
> This "Cairo.dll" - is it part of Perl CPAN module?

Yes. The module is called - surprise, surprise - Cairo.

> if YES - then proper CPAN perl module should be updated to improve its
> logic (what is it, BTW?)

Cairo is not the one referencing symbols from other "glue" DLLs,
AFAICT Pango and Gtk2 are the "culprits". There's probably a reason
why they do this,
but take it to their respective maintainers. But since it works outside of
a packed executable, my guess is that they have little inclination to change it.
Esp. since it's PAR::Packer that's to blame here - because PAR::Packer literally
modifies DynaLoader in order to load DLLs using mangled names.

> if - NOT - then the problem could be resolved by adding  needed
> DLLs into the PAR executable with "-l" - it does not renames them, AFAIK.

No, this has been tried before and doesn't work. To repeat myself:
you end up with two copies of the same DLL and _both_ get loaded.
Then some functions are executed in one copy and some in the other
(or perhaps its global variables). This screws up the glib/gobject
initialization
and leads to immediate program death.

Cheers, Roderich

Reply via email to