Bug #2903 explanations
| From: | Richard Stanford | Date: | Fri, 21 Jan 2000 21:47:28 +0000 |
| Subject: | Bug #2903 explanations | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-14813@lists.php.net to get a copy of this message | ||
I don't have CVS access so couldn't post this through bugs.php.net --
hopefully this can help someone :-)
[ the following applies to bug 2903 -- compiling PHP w/ Apache and
Informix on AIX ]
There seems to be some odd behaviour with the __STDC__ macro directive
in the standard AIX xlC cc compiler. You can also get it to build
correctly by placing:
#define __OLD__STDC__ __STDC__
#undef __STDC__
#define __STDC__ 1
before the Informix #include <sqlhdr.h> include set, and
#undef __STDC__
#define __STDC__ __OLD__STDC__
after it. This is kludgy, but it works. Like yours, you have to do
this to the .c file, not the .ec file.
- - -
As for the second issue, modify the Apache Makefile in the src directory
and add the following to the EXTRA_LIBS line:
EXTRA_LIBS=-L/informix/lib/tools -l4gsh604 -lld
You may need to change the 4gsh604 line to reflect your version of
Informix -- just ls $INFORMIXDIR/lib/tools/4gsh*a and you should see
what to do.
This is required because AIX doesn't require you to resolve external
symbols when compiling a library -- and so it fails to store the other
libraries used during library linking.