From:             mamfelt at acm dot org
Operating system: AIX 5.3 TL06
PHP version:      5.2.4
PHP Bug Type:     *Compile Issues
Bug description:  Problems with configure script on AIX with mysql 64-bit

Description:
------------
On a fresh install of AIX 5.3 at TL 06-03 I am trying to configure php5.

I was not expecting it to work perfectly on the first pass, because I am
also using the IBM compiler as part of the test, rather than gcc.

System: AIX 5.3, Power4, 64-bit mode, jfs2 filesystems
Compiler: xlC/C++ 7 with latest patches from July 2007

The first problem I run into is that configure wants the file:
xml2-config. I tried loading the AIX Toolbox package for libxml2, but this
package does not include the file xml2-config.

This problem I could resolve by downloading the source package
(libxml2-2.6.30), running config, make, and make install.

The next problem involved finding the mysql include and lib files. I have
the 64-bit version of mysql loaded:
[EMAIL PROTECTED]:[/usr/local]ls -l mysql
lrwxrwxrwx   1 root     system           52 Oct 09 22:28 mysql ->
/data/home/michael/mysql-5.0.45-aix5.2-powerpc-64bit

The mysql distributions have a standard layout. The include/lib files are
located at: /usr/local/mysql/include and /usr/local/mysql/lib

These two errors were resolved my adding two symbolic links:

[EMAIL PROTECTED]:[/usr/local/include]ls -l
total 160
drwxr-xr-x   3 root     system          256 Oct 09 22:31 libxml2
lrwxrwxrwx   1 root     system           16 Oct 09 22:42 mysql ->
../mysql/include
-rw-r--r--   1 root     system         9544 Oct 11 12:54 zconf.h
-rw-r--r--   1 root     system        66188 Oct 11 12:54 zlib.h

[EMAIL PROTECTED]:[/usr/local/lib]ls -l
total 10384
-rwxr-xr-x   1 root     system      5200148 Oct 09 22:31 libxml2.a
-rwxr-xr-x   1 root     system          785 Oct 09 22:31 libxml2.la
-rwxr-xr-x   1 root     system       103558 Oct 11 12:54 libz.a
lrwxrwxrwx   1 root     system           12 Oct 09 22:54 mysql ->
../mysql/lib
drwxr-xr-x   2 root     system          256 Oct 09 22:31 pkgconfig
-rw-r--r--   1 root     system          225 Oct 09 22:31 xml2Conf.sh

The final errors that I could not resolve regard the search for some mysql
functions:
checking for MySQL support... yes
checking for specified location of the MySQL UNIX socket... no
checking for MySQL UNIX socket location... /tmp/mysql.sock
checking for mysql_close in -lmysqlclient... no
checking for mysql_error in -lmysqlclient... no
configure: error: mysql configure failed. Please check config.log for more
information.

[EMAIL PROTECTED]:[/home/michael/prj/php-5.2.4]tail config.log
#line 59860 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error.  */
/* We use char because int might match the return type of a gcc2
    builtin and then its argument prototype would still apply.  */
char mysql_error();

int main() {
mysql_error()
; return 0; }

The library is found, but as it is 64-bit, the routines are not found.
Even with AIX I must specify -X64 to see the contents....

[EMAIL PROTECTED]:[/usr/local/lib/mysql]ls
libdbug.a                   libmysqlclient_r.so
libmysql.imp                libmysqlclient_r.so.15
libmysqlclient.a            libmysqlclient_r.so.15.0.0
libmysqlclient.so           libmystrings.a
libmysqlclient.so.15        libmysys.a
libmysqlclient.so.15.0.0    libz.a
libmysqlclient_r.a

[EMAIL PROTECTED]:[/usr/local/lib/mysql]ar -t libmysqlclient.a
[EMAIL PROTECTED]:[/usr/local/lib/mysql]ar -X64 -t libmysqlclient.a | head -5
libmysql.o
password.o
manager.o
get_password.o
errmsg.o

My assumption is that php is not supporting 64-bit builds. I'll put a
32-bit mysql in place (as it is only a symbolic link I need to change) and
continue. If php is linking functions into the client a 32-bit build should
not be a problem. However, if it is loading the mysqlclient library
dynamically, swictching to a 64-bit rte is likely to break php.

p.s. I also downloaded and built the zlib-1.2.3 package. Having it
installed was not enough, I still had to provide the source directory.





Reproduce code:
---------------
./configure --with-mysql --with-zlib-dir=/data/prj/zlib.1.2.3


Expected result:
----------------
That I could run make.

Actual result:
--------------
checking for MySQL support... yes
checking for specified location of the MySQL UNIX socket... no
checking for MySQL UNIX socket location... /tmp/mysql.sock
checking for mysql_close in -lmysqlclient... no
checking for mysql_error in -lmysqlclient... no
configure: error: mysql configure failed. Please check config.log for more
information.


-- 
Edit bug report at http://bugs.php.net/?id=42926&edit=1
-- 
Try a CVS snapshot (PHP 4.4): 
http://bugs.php.net/fix.php?id=42926&r=trysnapshot44
Try a CVS snapshot (PHP 5.2): 
http://bugs.php.net/fix.php?id=42926&r=trysnapshot52
Try a CVS snapshot (PHP 6.0): 
http://bugs.php.net/fix.php?id=42926&r=trysnapshot60
Fixed in CVS:                 http://bugs.php.net/fix.php?id=42926&r=fixedcvs
Fixed in release:             
http://bugs.php.net/fix.php?id=42926&r=alreadyfixed
Need backtrace:               http://bugs.php.net/fix.php?id=42926&r=needtrace
Need Reproduce Script:        http://bugs.php.net/fix.php?id=42926&r=needscript
Try newer version:            http://bugs.php.net/fix.php?id=42926&r=oldversion
Not developer issue:          http://bugs.php.net/fix.php?id=42926&r=support
Expected behavior:            http://bugs.php.net/fix.php?id=42926&r=notwrong
Not enough info:              
http://bugs.php.net/fix.php?id=42926&r=notenoughinfo
Submitted twice:              
http://bugs.php.net/fix.php?id=42926&r=submittedtwice
register_globals:             http://bugs.php.net/fix.php?id=42926&r=globals
PHP 3 support discontinued:   http://bugs.php.net/fix.php?id=42926&r=php3
Daylight Savings:             http://bugs.php.net/fix.php?id=42926&r=dst
IIS Stability:                http://bugs.php.net/fix.php?id=42926&r=isapi
Install GNU Sed:              http://bugs.php.net/fix.php?id=42926&r=gnused
Floating point limitations:   http://bugs.php.net/fix.php?id=42926&r=float
No Zend Extensions:           http://bugs.php.net/fix.php?id=42926&r=nozend
MySQL Configuration Error:    http://bugs.php.net/fix.php?id=42926&r=mysqlcfg

Reply via email to