From owner-freebsd-questions Sun Feb 6 14: 2: 4 2000 Delivered-To: freebsd-questions@freebsd.org Received: from oracle.clara.net (oracle.clara.net [195.8.69.94]) by builder.freebsd.org (Postfix) with ESMTP id F13BD3D82 for ; Sun, 6 Feb 2000 14:01:54 -0800 (PST) Received: from [195.8.86.136] (helo=clara.co.uk) by oracle.clara.net with esmtp (Exim 2.12 #2) id 12HZlE-000Ipk-00 for freebsd-questions@freebsd.org; Sun, 6 Feb 2000 22:02:29 +0000 Message-ID: <389DEEE3.1F9FAF0F@clara.co.uk> Date: Sun, 06 Feb 2000 22:00:03 +0000 From: Tom Bowyer X-Mailer: Mozilla 4.61 [en] (X11; I; FreeBSD 3.4-STABLE i386) X-Accept-Language: en MIME-Version: 1.0 To: freebsd-questions@freebsd.org Subject: PHP & Informix Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-questions@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Hi all, I have a real opportunity to use FreeBSD at work if I can compile PHP with Informix support. I am using (trying to use): titan# uname -a FreeBSD titan.tab1.clara.co.uk 3.4-STABLE FreeBSD 3.4-STABLE #5: Sun Feb 6 17:38:15 GMT 2000 root@titan.tab1.clara.co.uk:/usr/src/sys/compile/TAB1 i386 Apache 1.3.11 PHP 3.0.14 Informix Client SDK for Linux Linux base 6.1 I have $INFORMIXDIR set and I have $INFORMIXDIR/bin in my path. esql runs okay. With linux_base 5.2 it just seg faulted. Then I basically follow the INSTALL doc in the php distribution replacing "--with-mysql=..." with "--with-informix" titan# cd /usr/local/src/php3 titan# ./configure --with-apache=../apache --with-informix --enable-track-vars titan# make titan# make install titan# cd ../apache All okay and then I get this: ----------------------------------------------------------------------- titan# ./configure --prefix=/usr/local/apache --activate-module=src/modules/php3/libphp3.a Configuring for Apache, Version 1.3.11 + using installation path layout: Apache (config.layout) + activated php3 module (modules/php3/libphp3.a) Creating Makefile Creating Configuration.apaci in src Creating Makefile in src + configured for FreeBSD 3.4 platform + setting C compiler to gcc + setting C pre-processor to gcc -E + checking for system header files + adding selected modules o php3_module uses ConfigStart/End + checking sizeof various data types + doing sanity check on compiler and options ** A test compilation with your Makefile configuration ** failed. The below error output from the compilation ** test will give you an idea what is failing. Note that ** Apache requires an ANSI C Compiler, such as gcc. cd ..; gcc -funsigned-char -DUSE_HSREGEX -DUSE_EXPAT -I./lib/expat-lite -DNO_DL_NEEDED `./apaci` -o helpers/dummy helpers/dummy.c -Lmodules/php3 -L../modules/php3 -L../../modules/php3 -lmodphp3 -L/opt/informix/lib -L/opt/informix/lib/esql -lifsql -lifasf -lifgen -lifos -lifgls -lnetstub -lc -ldl -lcrypt /opt/informix/lib/esql/checkapi.o -lifglx -lpam -lm -lcrypt -lcrypt /opt/informix/lib/esql/libifos.so: warning: mktemp() possibly used unsafely; consider using mkstemp() /usr/libexec/elf/ld: cannot open -ldl: No such file or directory *** Error code 1 Stop. ======== Error Output for sanity check ======== ============= End of Error Report ============= Aborting! --------------------------------------------------------------------------------- From my reading of mailing list archives I see that -ldl does not exist in FreeBSD, and the required functions are in -lc (Am I wrong about this?) and so I edit /usr/local/apache/src/modules/php3/libphp3.module and from the libs line I remove -ldl (-lc is already there). Then I get: --------------------------------------------------------------------------------- titan# ./configure --prefix=/usr/local/apache --activate-module=src/modules/php3 /libphp3.a Configuring for Apache, Version 1.3.11 + using installation path layout: Apache (config.layout) + activated php3 module (modules/php3/libphp3.a) Creating Makefile Creating Configuration.apaci in src Creating Makefile in src + configured for FreeBSD 3.4 platform + setting C compiler to gcc + setting C pre-processor to gcc -E + checking for system header files + adding selected modules o php3_module uses ConfigStart/End + checking sizeof various data types + doing sanity check on compiler and options ** A test compilation with your Makefile configuration ** failed. The below error output from the compilation ** test will give you an idea what is failing. Note that ** Apache requires an ANSI C Compiler, such as gcc. cd ..; gcc -funsigned-char -DUSE_HSREGEX -DUSE_EXPAT -I./lib/expat-lite -DNO_DL _NEEDED `./apaci` -o helpers/dummy helpers/dummy.c -Lmodules/php3 -L../mod ules/php3 -L../../modules/php3 -lmodphp3 -L/opt/informix/lib - L/opt/informix/lib/esql -lifsql -lifasf -lifgen -lifos -lifgls -lnetstub -lc -lc rypt /opt/informix/lib/esql/checkapi.o -lifglx -lpam -lm -lcrypt -lcrypt /opt/informix/lib/esql/libifos.so: warning: mktemp() possibly used unsafely; con sider using mkstemp() /opt/informix/lib/esql/libifgen.so: undefined reference to `__strtod_internal' /opt/informix/lib/esql/libifgen.so: undefined reference to `stdout' /opt/informix/lib/libifasf.so: undefined reference to `__ctype_b' /opt/informix/lib/libifasf.so: undefined reference to `__rawmemchr' /opt/informix/lib/esql/libifsql.so: undefined reference to `__strtol_internal' /opt/informix/lib/esql/libifsql.so: undefined reference to `__bzero' /opt/informix/lib/esql/libifgls.so: undefined reference to `__strtoul_internal'/opt/informix/lib/esql/libifos.so: undefined reference to `__ctype_toupper' /opt/informix/lib/esql/libifgen.so: undefined reference to `nl_langinfo' /opt/informix/lib/esql/libifgen.so: undefined reference to `stdin' /opt/informix/lib/esql/libifos.so: undefined reference to `getspnam' /opt/informix/lib/esql/libifgen.so: undefined reference to `_IO_getc' /opt/informix/lib/esql/libifos.so: undefined reference to `setmntent' /opt/informix/lib/esql/libifos.so: undefined reference to `endmntent' /opt/informix/lib/esql/libifgen.so: undefined reference to `__assert_fail' /opt/informix/lib/esql/libifos.so: undefined reference to `__h_errno_location' /opt/informix/lib/esql/libifsql.so: undefined reference to `stderr' /opt/informix/lib/esql/libifgen.so: undefined reference to `ecvt' /opt/informix/lib/esql/libifos.so: undefined reference to `getmntent' /opt/informix/lib/esql/libifsql.so: undefined reference to `__xstat' /opt/informix/lib/esql/libifsql.so: undefined reference to `__errno_location' /opt/informix/lib/esql/libifgen.so: undefined reference to `_IO_putc' /opt/informix/lib/libifasf.so: undefined reference to `__ctype_tolower' *** Error code 1 Stop. ======== Error Output for sanity check ======== ============= End of Error Report ============= Aborting! ---------------------------------------------------------------- The question(s): 1) Do I simply need to add in another library somewhere in replacment for -ldl? 2) Since esql is running under linux emulation do I need to do the compilations of php & apache under linux mode as well? If so how would I dos this? 3) Would it be easier to use some kind of ODBC soloution rather than trying to compile in the informix support? All ideas gratefully received Tom. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message