Resend - hoping to evade the 50KB limit (and HTML/quoted formatting probably
had something to do with breaching that limit).

[Eg:
&gt; =A0Platform:<br>&gt; =A0 =A0osname=3Daix, osvers=3D5.3.0.0, archname=
=3Daix-thread-multi-64all<br>&
gt; =A0 =A0uname=3D&#39;aix luchda06 3 5 000a=
97d8d600 &#39;<br>&gt; =A0 =A0config_args=3D&#39;-d -Dcc=3Dcc_r -Duseshrpli=
b -Dusethreads -Duse64bitall -Dprefix=3D/usr/opt/perl5_64&#39;<br>
]



---------- Forwarded message ----------
From: Jonathan Leffler <jonathan.leff...@gmail.com>
Date: Wed, Jul 21, 2010 at 7:21 AM
Subject: Re: DBD::Informix -- Failure with make test
To: Julie Bouillon <ju...@geekgirls.org>
Cc: dbi-users@perl.org


Sorry for the slow response...


On Tue, Jul 20, 2010 at 3:28 AM, Julie Bouillon <ju...@geekgirls.org> wrote:
> I'm trying to build DBD::Informix on AIX but when I'm executing a make
test, it fails at every test with an unresolved symbol error (ifx_checkAPI).

This comes from checkapi.o - or should do.

What's puzzling is that the 'library' list correctly includes the object
file.


... We are going to use the library list:
-lifsql -lifasf -lifgen -lifos -lifgls -ltli -lc_r -lmsaa -lbsd -ldl -lm_r
/opt/informix/11.50/lib/esql/checkapi.o -lifglx

And the library build command includes the object file:


ld  -b64 -bhalt:4 -G
-bI:/usr/opt/perl5_64/lib/5.12.0/aix-thread-multi-64all/CORE/perl.exp
-bE:Informix.exp -bnoentry -lpthreads -lc -lm Informix.o dbdimp.o dbdattr.o
sqltoken.o sqltype.o ixblob.o odbctype.o kludge.o link.o esqlcver.o
esqlc_v6.o -L/opt/informix/11.50/lib -L/opt/informix/11.50/lib/esql -lifsql
-lifasf -lifgen -lifos -lifgls -ltli -lc_r -lmsaa -lbsd -ldl -lm_r
/opt/informix/11.50/lib/esql/checkapi.o -lifglx -o
blib/arch/auto/DBD/Informix/Informix.so

It can't readily be something weird like 'the checkapi.o file does not
contain ifx_checkAPI' because the test program compiled and ran.

I would take a look at the output of:

file dbdimp.o /opt/informix/11.50/lib/esql/checkapi.o

If the types quoted are not the same, that may account for some of the
problem.

Thank you for the thorough and detailed report - it does help cut down the
possible problems.

For example, I can see that your Perl was built with the latest XLC compiler
- I can confidently assert that the CSDK you are using was not.  There is
seldom a problem because of that - not least because we know the test
program worked.

So, why isn't the ifx_checkAPI() function found in the library when it is in
the object file linked into the library?  That is puzzling!

[...megasnip...]

-- 
Jonathan Leffler <jonathan.leff...@gmail.com>  #include <disclaimer.h>
Guardian of DBD::Informix - v2008.0513 - http://dbi.perl.org
"Blessed are we who can laugh at ourselves, for we shall never cease to be
amused."

Reply via email to