Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:
I've got a module (DBD::Informix) that doesn't load when the PERL_DL_NONLAZY environment variable is set. The linking fails: missing symbol name is simply `stat' (!).
What is the effect of the PERL_DL_NONLAZY flag, where is it documented, and how can I prevent ExtUtils::MakeMaker from setting it?
Here is the output; note that the Informix libraries, which it is trying to link, are listed in /etc/ld.so.conf.
[root@apollo root]# PERL_DL_NONLAZY=1 perl -MDBD::Informix Can't load '/usr/lib/site_perl/5.6.1/i686-linux-thread-multi/auto/DBD/ +Informix/Informix.so' for module DBD::Informix: /usr/informix/lib/esq +l/libifgen.so: undefined symbol: stat at /usr/lib/5.6.1/i686-linux-th +read-multi/DynaLoader.pm line 206. at - line 0 Compilation failed in require. BEGIN failed--compilation aborted. [root@apollo root]# PERL_DL_NONLAZY=0 perl -MDBD::Informix -le 'print +"foo"' foo [root@apollo root]#
Thanks...
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: PERL_DL_NONLAZY=1
by hossman (Prior) on Jun 11, 2003 at 02:28 UTC |