ID: 38868 User updated by: flconseil at yahoo dot fr Reported By: flconseil at yahoo dot fr Status: Wont fix Bug Type: Compile Failure Operating System: AIX 5.2 PHP Version: 5.1.6 New Comment:
Sorry to insist but I wanted to make it clear because I reference it in my (excellent :-) document about building PHP on AIX (http://www.tekwire.net/joomla/content/view/16/1/), and several people asked about this bug's status. While I generally agree with your decision of restricting the build environment you support, I must say that it is not the case for GNU ld. It is perfectly legitmate not to support native compilers but linkers are a more sensitive case and attempting to use only the GNU linker on systems like AIX or HP-UX has a number of side effects impossible to solve for non-expert people. Building Apache & PHP on these systems is already complex (especially PHP 4) and it is not worth the pain to add another difficulty to the task. For people used to their OS, using gcc is not a problem, but using the GNU linker is not natural and the switch is much less transparent. And there is still this message when compiling LDAP saying that it refuses to generate dynamic libs because GNU ld is supposed not to generate them properly on AIX. Do you consider it as a wrong assertion in LDAP's configure ? What's your advice about this ? Francois Previous Comments: ------------------------------------------------------------------------ [2006-09-18 21:17:23] [EMAIL PROTECTED] Sorry, we do not support AIX native linker. ------------------------------------------------------------------------ [2006-09-18 21:05:05] flconseil at yahoo dot fr Sorry but, after fighting with GNU ld and gcc during 2 hours, I am giving up. Using GNU ld brings some new errors in the configure stage. I solved one by adding '-Wl,-rpath,/usr/lib' to LDFLAGS but, now, it is failing LDAP detection and I won't spend the night on it. Another reason why I am giving up is that ldap's configure refuses to generate dynamic libraries with GNU ld (saying that GNU ld is known not to generate correct dynamic libs on AIX). So, as I want to generate everything with the same linker, I will keep the AIX linker. But I think I know why we have unresolved references when loading gd. As you said, the PHP core is linked with GNU ld but, on AIX, if the linker does not detect any reference to a library, it does not keep it in the list of required libraries. In my configuration, as I have kept the core to the minimum, I don't have any reference from the core to libm and, when I run 'ldd' or 'dump -H' against 'php' or 'libphp5.so', the libm is not referenced. As, by default, gd is not linked with the libm, it does not have the reference and, finally, when it is loaded, the libm symbols cannot be resolved as this lib is not referenced anywhere in the installed files. That's why, as every other extension is linked against the libs it needs, I still think that gd should be linked explicitely with the libm. ------------------------------------------------------------------------ [2006-09-18 16:51:32] flconseil at yahoo dot fr OK. I was using GNU make but not GNU ld. I am going to try it. ------------------------------------------------------------------------ [2006-09-18 16:48:18] [EMAIL PROTECTED] Please read my previous comments. ------------------------------------------------------------------------ [2006-09-18 16:43:11] flconseil at yahoo dot fr Same problem with 5.1.2. Here are the exact error messages : PHP Warning: dl(): Unable to load dynamic library '/logi/http/php/lib/php/extensions/gd.so' - rtld: 0712-001 Symbol sqrt was referenced from module /logi/http/php/lib/php/extensions/gd.so(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol atan2 was referenced from module /logi/http/php/lib/php/extensions/gd.so(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol sin was referenced from module /logi/http/php/lib/php/extensions/gd.so(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol cos was referenced from module /logi/http/php/lib/php/extensions/gd.so(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol tan was referenced from module /logi/http/php/lib/php/extensions/gd.so(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol floor was referenced from module /logi/http/php/lib/php/extensions/gd.so(), but a runtime definition o in /logi/http/comp/util/.data/test.php on line 22 Warning: dl(): Unable to load dynamic library '/logi/http/php/lib/php/extensions/gd.so' - rtld: 0712-001 Symbol sqrt was referenced from module /logi/http/php/lib/php/extensions/gd.so(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol atan2 was referenced from module /logi/http/php/lib/php/extensions/gd.so(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol sin was referenced from module /logi/http/php/lib/php/extensions/gd.so(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol cos was referenced from module /logi/http/php/lib/php/extensions/gd.so(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol tan was referenced from module /logi/http/php/lib/php/extensions/gd.so(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol floor was referenced from module /logi/http/php/lib/php/extensions/gd.so(), but a runtime definition o in /logi/http/comp/util/.data/test.php on line 22 ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/38868 -- Edit this bug report at http://bugs.php.net/?id=38868&edit=1