"Mahdi A. Sbeih" wrote:
> Hi,
Please include Informix in the subject line when you are asking about -- I was
sorely tempted to delete 200+ messages not marked with Informix, but didn't, so
I spotted your question. You are lucky.
> I have a working environment of DBI, we want to upgrade to
> a newer version of Informix Client SDK, do I need to rebuild
> the DBD::Informix with the newer version of Client SDK, or not?
As usual - it depends.
If your new version of CSDK is installed in the same location as the old one and
provides/uses the same set of libraries, you don't have to recompile. If you
are using a new $INFORMIXDIR and did not compile DBD::Informix with the
DBD_INFORMIX_RELOCATABLE_INFORMIXDIR=yes environment variable set, then you need
to recompile -- or fix a symlink so that it looks as though the new software is
in the old location.
> What about if we want to upgrade the Informix Server and Client SDK,
> do I need to rebuild any thing?
See above for the change in CSDK; simply upgrading the server should not cause
any problems at all.
> I am asking this, because I built Perl,DBI and DBD::Informix on a machine
> that has Informix Server 7.x and Client SDK 2.10, then I moved the whole
> Perl,DBI and DBD::Informix
> to a similar machine but with Informix 9.x and Client SDK 2.50 and I am able
> to run my Perl DBI
> Scripts just as fine as on the first machine. I don't know if this
> suppose to happen or it is just a chance that I didn't get any error?
It's supposed to happen; CSDK (ESQL/C) goes to considerable pains to ensure that
the old interface continues to work in the new library. However, you might get
better performance with a recompile -- or it might make no difference
whatsoever. It depends on whether the underlying CSDK interface changed at any
time between CSDK 2.10 and 2.50. I don't remember.
It is always safest to recompile. It is often not strictly necessary.
--
Jonathan Leffler ([EMAIL PROTECTED], [EMAIL PROTECTED])
Guardian of DBD::Informix 1.00.PC1 -- see http://www.cpan.org/
#include <disclaimer.h>