Jonathan,
I managed to figure out a cause, it is LD_LIBRARY_PATH that points to 4GL libs instead of CSDK ones.
Please, why library location is not built into compiled Informix.so, as it stated in DBD::Informix's README?
With Version 0.95 and above, the absolute pathnames of the Informix shared libraries
will be built into your DBD::Informix library by default, which means that you do not need to
worry about LD_LIBRARY_PATH, LD_RUN_PATH, SHLIB_PATH, or LIBPATH at runtime.
Then I tried to build static module with DBD_INFORMIX_ESQLC_LINKAGE=-static
That resulted in linkage errors,
/bin/ld: /opt/informix/csdk/4.10.fc15/lib/libifasf.a(asfapi.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/bin/ld: /opt/informix/csdk/4.10.fc15/lib/libifasf.a(asfutil.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
<...>
After that I added DBD_INFORMIX_DEBUG_GCC=-fPIC but with no success.
------------------------------
Sincerely,
Dennis
------------------------------
Original Message:
Sent: Fri October 10, 2025 01:05 AM
From: Jonathan Leffler
Subject: DBD::Informix - Cannot unset AutoCommit for unlogged databases
Please show a complete reproduction script - it should be under 10 lines long. The connection string is very important.
You could send it to my Gmail account - which is where DBD::Informix support is handled these days.
It's slightly odd to be using CSDK 4.50 with IDS 11.70 (it goes with version 14.10 most naturally), but I don't think that's a contributing factor.
The Informix environment would be useful.
So would the result of running "SELECT * FROM sysmaster:sysdatabases"
------------------------------
Jonathan Leffler
Original Message:
Sent: Thu October 09, 2025 10:27 AM
From: Dennis Melnikov
Subject: DBD::Informix - Cannot unset AutoCommit for unlogged databases
Hi,
Trying to use DBD::Informix.
Oracle Linux Server 8.10
Perl v5.26.3
DBI 1.641-4
DBD::Informix 2018.1031
CSDK 4.50.FC5
Informix Dynamic Server 11.70.FC5XE
When I execute
$dbh_bl->{AutoCommit} = 0;
Perl aborts with the above message,
DBD::Informix - Cannot unset AutoCommit for unlogged databases
All our databases are logged, so I have no clue why the error occurs.
------------------------------
Sincerely,
Dennis
------------------------------