Skip to content

Instantly share code, notes, and snippets.

@natsu90
Last active March 27, 2024 21:54
Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 9 You must be signed in to fork a gist
  • Save natsu90/6787b254929355c34e63 to your computer and use it in GitHub Desktop.
Save natsu90/6787b254929355c34e63 to your computer and use it in GitHub Desktop.
Installing PDO Informix
1. Installing Informix Client SDK for Linux x86_64
1.1 Download Informix Client SDK 3.70 for Linux x86_64 from IBM website, https://www-01.ibm.com/marketing/iwm/tnd/search.jsp?rs=ifxdl
1.2 Extract the file, `cd /opt/informix; tar -xvf clientsdk.3.70.FC8DE.LINUX.tar`
1.3 Start installation, `./installclientsdk`, install all
2. Installing PDO Informix
2.1 Download PDO Informix 1.3.1, `wget https://pecl.php.net/get/PDO_INFORMIX-1.3.1.tgz`
2.2 Extract the file, `tar -xvf PDO_INFORMIX-1.3.1.tgz`
2.3 `cd PDO_INFORMIX-1.3.1` and compiling
2.3.1 `phpize`
2.3.2 `./configure --with-pdo-informix=/opt/informix`, if getting error `configure: error: Cannot find php_pdo_driver.h`, do `ln -s /usr/include/php5 /usr/include/php` and try again.
2.3.3 `make`
2.3.4 `make install`
3. Include pdo_informix.so in php.ini
Other reference: http://stackoverflow.com/questions/19909075/php-and-informix-on-debian-how-to-install-configure-the-pdo
@jklemm
Copy link

jklemm commented Sep 15, 2017

Work same to PHP 7?

@vitorfavila
Copy link

@jklemm yes, 7.0 and 7.1

@leitom
Copy link

leitom commented Oct 18, 2019

It does not seem to work any more?

@mfalemany
Copy link

Hi, can you help me please? In this process i got this error:

/bin/bash /opt/informix/PDO_INFORMIX-1.3.1/libtool --mode=compile cc -I/usr/local/include/php/ext -I. -I/opt/informix/PDO_INFORMIX-1.3.1 -DPHP_ATOM_INC -I/opt/informix/PDO_INFORMIX-1.3.1/include -I/opt/informix/PDO_INFORMIX-1.3.1/main -I/opt/informix/PDO_INFORMIX-1.3.1 -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib -I/opt/informix/incl/cli -I/opt/informix/incl/esql -DHAVE_CONFIG_H -g -O2 -c /opt/informix/PDO_INFORMIX-1.3.1/pdo_informix.c -o pdo_informix.lo
mkdir .libs
cc -I/usr/local/include/php/ext -I. -I/opt/informix/PDO_INFORMIX-1.3.1 -DPHP_ATOM_INC -I/opt/informix/PDO_INFORMIX-1.3.1/include -I/opt/informix/PDO_INFORMIX-1.3.1/main -I/opt/informix/PDO_INFORMIX-1.3.1 -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib -I/opt/informix/incl/cli -I/opt/informix/incl/esql -DHAVE_CONFIG_H -g -O2 -c /opt/informix/PDO_INFORMIX-1.3.1/pdo_informix.c -fPIC -DPIC -o .libs/pdo_informix.o
/opt/informix/PDO_INFORMIX-1.3.1/pdo_informix.c: In function 'zif_confirm_pdo_informix_compiled':
/opt/informix/PDO_INFORMIX-1.3.1/pdo_informix.c:192:31: error: macro "RETURN_STRINGL" passed 3 arguments, but takes just 2
RETURN_STRINGL(string, len, 1);
^
/opt/informix/PDO_INFORMIX-1.3.1/pdo_informix.c:192:2: error: 'RETURN_STRINGL' undeclared (first use in this function)
RETURN_STRINGL(string, len, 1);
^~~~~~~~~~~~~~
/opt/informix/PDO_INFORMIX-1.3.1/pdo_informix.c:192:2: note: each undeclared identifier is reported only once for each function it appears in
Makefile:215: recipe for target 'pdo_informix.lo' failed
make: *** [pdo_informix.lo] Error 1

any ideas?
Thanks!

@maverickatul
Copy link

I am also getting the above error any resolution for this

@alui-civica
Copy link

alui-civica commented Sep 20, 2020

Hi, I am also having issues in compiling pdo_informix.

I am using the below:
CentOS 7.8 (clean install)
php 5.4 (from yum)
informix CSDK clientsdk.3.70.FC8DE
PDO_INFORMIX-1.3.1

I can complile the pdo_informix with no issue, but when I do the make test, I am getting the below error. (Especially undefined symbol: pdo_parse_params). Would anyone have any idea how to solve this? Thanks

make test

Build complete.
Don't forget to run 'make test'.

PHP Warning: PHP Startup: Unable to load dynamic library '/opt/SOFTWARE/PDO_INFORMIX-1.3.1/modules/pdo_informix.so' - /opt/SOFTWARE/PDO_INFORMIX-1.3.1/modules/pdo_informix.so: undefined symbol: pdo_parse_params in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library '/opt/SOFTWARE/PDO_INFORMIX-1.3.1/modules/pdo_informix.so' - /opt/SOFTWARE/PDO_INFORMIX-1.3.1/modules/pdo_informix.so: undefined symbol: pdo_parse_params in Unknown on line 0

=====================================================================
PHP : /usr/bin/php
Warning: PHP Startup: Unable to load dynamic library '/opt/SOFTWARE/PDO_INFORMIX-1.3.1/modules/pdo_informix.so' - /opt/SOFTWARE/PDO_INFORMIX-1.3.1/modules/pdo_informix.so: undefined symbol: pdo_parse_params in Unknown on line 0

PHP_SAPI : cli
PHP_VERSION : 5.4.16
ZEND_VERSION: 2.4.0
PHP_OS : Linux - Linux ffdev7 3.10.0-1127.19.1.el7.x86_64 #1 SMP Tue Aug 25 17:23:54 UTC 2020 x86_64
INI actual : /opt/SOFTWARE/PDO_INFORMIX-1.3.1/tmp-php.ini
More .INIs :
CWD : /opt/SOFTWARE/PDO_INFORMIX-1.3.1
Extra dirs :
VALGRIND : Not used

update (1)
Looks like "make test" failed. But I still install it by "make install" and then I do the test and it works. Thanks a lot for all your help. I would like to share the process I used to make it work if someone would find it useful.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment