ID: 31001 Updated by: [EMAIL PROTECTED] Reported By: jse at kronos dot honk dot rog -Status: Open +Status: Bogus Bug Type: Compile Failure Operating System: AIX 5.1 PHP Version: 4.3.9 New Comment:
Or simply export "CC=/path/to/gcc -maix64" in the first place should work just as well, did you try that? AIX requires use of the "slibclean" command sometimes, to unmap unused libraries - that's not really a PHP issue either. Previous Comments: ------------------------------------------------------------------------ [2004-12-06 20:46:11] jse at kronos dot honk dot rog I found a workaround for this bug. When building PHP, a modification will be required to the libtool script in order to build a 64-bit lib. After running the configure command, edit libtool, search for: CC="/usr/local/bin/gcc" And change it to: CC="/usr/local/bin/gcc -maix64" (Adjust your compiler path accordingly.) Then, run 'make' followed by 'make install'. You might have to remove an existing php module from the apache server tree before installing the new version. Seems that AIX thinks that the module is in use even though apache is not running. Manually removing the module before installation fixes this. rm /usr/webserver/libexec/libphp4.so You can verify the module is a 64-bit version by running the file command and observing the output: # file libs/libphp4.so libs/libphp4.so: 64-bit XCOFF executable or object module not stripped ------------------------------------------------------------------------ [2004-12-06 18:04:39] jse at kronos dot honk dot rog Description: ------------ First, I setup the env for a 64-bit build. This was the best info I could find on how to do this: CC=/usr/local/bin/gcc CFLAGS="-maix64" OBJECT_MODE=64 export CC CFLAGS OBJECT_MODE # /usr/local/bin/gcc --version gcc (GCC) 3.2.2 Next, I configured PHP: ./configure \ --prefix=/usr/webserver \ --enable-force-cgi-redirect \ --disable-cli \ --disable-pear \ --with-apxs=/usr/webserver/bin/apxs (Building for Apache 1.3.33/mod_ssl 2.8.22.) The configure seems to run fine. When I issue the make, it runs fine until libtool is called. Expected result: ---------------- I would expect to have a 64-bit object produced. Actual result: -------------- /bin/sh /usr/HTTPServer/apachesrc/php-4.3.9/libtool --silent --preserve-dup-deps --mode=link /usr/local/bin/gcc -maix64 -prefer-pic -rpath /usr/HTTPServer/apachesrc/php-4.3.9/libs -Wl,-brtl -Wl,-bI:/usr/webserver/libexec/httpd.exp -avoid-version -module ext/ctype/ctype.lo ext/mysql/php_mysql.lo ext/mysql/libmysql/libmysql.lo ext/mysql/libmysql/errmsg.lo ext/mysql/libmysql/net.lo ext/mysql/libmysql/violite.lo ext/mysql/libmysql/password.lo ext/mysql/libmysql/my_init.lo ext/mysql/libmysql/my_lib.lo ext/mysql/libmysql/my_static.lo ext/mysql/libmysql/my_malloc.lo ext/mysql/libmysql/my_realloc.lo ext/mysql/libmysql/my_create.lo ext/mysql/libmysql/my_delete.lo ext/mysql/libmysql/my_tempnam.lo ext/mysql/libmysql/my_open.lo ext/mysql/libmysql/mf_casecnv.lo ext/mysql/libmysql/my_read.lo ext/mysql/libmysql/my_write.lo ext/mysql/libmysql/errors.lo ext/mysql/libmysql/my_error.lo ext/mysql/libmysql/my_getwd.lo ext/mysql/libmysql/my_div.lo ext/mysql/libmysql/mf_pack.lo ext/mysql/libmysql/my_messnc.lo ext/mysql/libmysql/mf_dirname.lo ext/mysql/libmysql/mf_fn_ext.lo ext/mysql/libmysql/mf_wcomp.lo ext/mysql/libmysql/typelib.lo ext/mysql/libmysql/safemalloc.lo ext/mysql/libmysql/my_alloc.lo ext/mysql/libmysql/mf_format.lo ext/mysql/libmysql/mf_path.lo ext/mysql/libmysql/mf_unixpath.lo ext/mysql/libmysql/my_fopen.lo ext/mysql/libmysql/mf_loadpath.lo ext/mysql/libmysql/my_pthread.lo ext/mysql/libmysql/my_thr_init.lo ext/mysql/libmysql/thr_mutex.lo ext/mysql/libmysql/mulalloc.lo ext/mysql/libmysql/string.lo ext/mysql/libmysql/default.lo ext/mysql/libmysql/my_compress.lo ext/mysql/libmysql/array.lo ext/mysql/libmysql/my_once.lo ext/mysql/libmysql/list.lo ext/mysql/libmysql/my_net.lo ext/mysql/libmysql/dbug.lo ext/mysql/libmysql/strmov.lo ext/mysql/libmysql/strxmov.lo ext/mysql/libmysql/strnmov.lo ext/mysql/libmysql/strmake.lo ext/mysql/libmysql/strend.lo ext/mysql/libmysql/strfill.lo ext/mysql/libmysql/is_prefix.lo ext/mysql/libmysql/int2str.lo ext/mysql/libmysql/str2int.lo ext/mysql/libmysql/strinstr.lo ext/mysql/libmysql/strcont.lo ext/mysql/libmysql/strcend.lo ext/mysql/libmysql/bchange.lo ext/mysql/libmysql/bmove.lo ext/mysql/libmysql/bmove_upp.lo ext/mysql/libmysql/longlong2str.lo ext/mysql/libmysql/strtoull.lo ext/mysql/libmysql/strtoll.lo ext/mysql/libmysql/charset.lo ext/mysql/libmysql/ctype.lo ext/overload/overload.lo ext/pcre/pcrelib/maketables.lo ext/pcre/pcrelib/get.lo ext/pcre/pcrelib/study.lo ext/pcre/pcrelib/pcre.lo ext/pcre/php_pcre.lo ext/posix/posix.lo ext/session/session.lo ext/session/mod_files.lo ext/session/mod_mm.lo ext/session/mod_user.lo regex/regcomp.lo regex/regexec.lo regex/regerror.lo regex/regfree.lo ext/standard/array.lo ext/standard/base64.lo ext/standard/basic_functions.lo ext/standard/browscap.lo ext/standard/crc32.lo ext/standard/crypt.lo ext/standard/cyr_convert.lo ext/standard/datetime.lo ext/standard/dir.lo ext/standard/dl.lo ext/standard/dns.lo ext/standard/exec.lo ext/standard/file.lo ext/standard/filestat.lo ext/standard/flock_compat.lo ext/standard/formatted_print.lo ext/standard/fsock.lo ext/standard/head.lo ext/standard/html.lo ext/standard/image.lo ext/standard/info.lo ext/standard/iptc.lo ext/standard/lcg.lo ext/standard/link.lo ext/standard/mail.lo ext/standard/math.lo ext/standard/md5.lo ext/standard/metaphone.lo ext/standard/microtime.lo ext/standard/pack.lo ext/standard/pageinfo.lo ext/standard/parsedate.lo ext/standard/quot_print.lo ext/standard/rand.lo ext/standard/reg.lo ext/standard/soundex.lo ext/standard/string.lo ext/standard/scanf.lo ext/standard/syslog.lo ext/standard/type.lo ext/standard/uniqid.lo ext/standard/url.lo ext/standard/url_scanner.lo ext/standard/var.lo ext/standard/versioning.lo ext/standard/assert.lo ext/standard/strnatcmp.lo ext/standard/levenshtein.lo ext/standard/incomplete_class.lo ext/standard/url_scanner_ex.lo ext/standard/ftp_fopen_wrapper.lo ext/standard/http_fopen_wrapper.lo ext/standard/php_fopen_wrapper.lo ext/standard/credits.lo ext/standard/css.lo ext/standard/var_unserializer.lo ext/standard/ftok.lo ext/standard/aggregation.lo ext/standard/sha1.lo ext/tokenizer/tokenizer.lo ext/xml/xml.lo ext/xml/expat/xmlparse.lo ext/xml/expat/xmlrole.lo ext/xml/expat/xmltok.lo TSRM/TSRM.lo TSRM/tsrm_strtok_r.lo TSRM/tsrm_virtual_cwd.lo main/main.lo main/snprintf.lo main/spprintf.lo main/php_sprintf.lo main/safe_mode.lo main/fopen_wrappers.lo main/alloca.lo main/php_scandir.lo main/php_ini.lo main/SAPI.lo main/rfc1867.lo main/php_content_types.lo main/strlcpy.lo main/strlcat.lo main/mergesort.lo main/reentrancy.lo main/php_variables.lo main/php_ticks.lo main/streams.lo main/network.lo main/php_open_temporary_file.lo main/php_logos.lo main/output.lo main/memory_streams.lo main/user_streams.lo Zend/zend_language_parser.lo Zend/zend_language_scanner.lo Zend/zend_ini_parser.lo Zend/zend_ini_scanner.lo Zend/zend_alloc.lo Zend/zend_compile.lo Zend/zend_constants.lo Zend/zend_dynamic_array.lo Zend/zend_execute_API.lo Zend/zend_highlight.lo Zend/zend_llist.lo Zend/zend_opcode.lo Zend/zend_operators.lo Zend/zend_ptr_stack.lo Zend/zend_stack.lo Zend/zend_variables.lo Zend/zend.lo Zend/zend_API.lo Zend/zend_extensions.lo Zend/zend_hash.lo Zend/zend_list.lo Zend/zend_indent.lo Zend/zend_builtin_functions.lo Zend/zend_sprintf.lo Zend/zend_ini.lo Zend/zend_qsort.lo Zend/zend_multibyte.lo Zend/zend_execute.lo sapi/apache/sapi_apache.lo sapi/apache/mod_php4.lo sapi/apache/php_apache.lo main/internal_functions.lo -lm -o libphp4.la Assembler: /tmp//ccFtbPrN.s: line 13: Only .llong should be used for relocatable expressions. /tmp//ccFtbPrN.s: line 46: Only .llong should be used for relocatable expressions. /tmp//ccFtbPrN.s: line 68: Only .llong should be used for relocatable expressions. /tmp//ccFtbPrN.s: line 95: Only .llong should be used for relocatable expressions. collect2: gcc returned 1 exit status make: 1254-004 The error code from the last command is 1. Stop. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=31001&edit=1