ID: 46511 User updated by: ben dot lentz at gmail dot com Reported By: ben dot lentz at gmail dot com Status: Bogus Bug Type: Compile Failure Operating System: AIX 5.3.8.2 PHP Version: 5.2.6 New Comment:
I had the right versions of GNU sed and tried changing my shell to the latest version of bash. No dice. Simply put, enabling every php extension that I needed to build was not possible because of this issue. I received absolutely no help from filing this bug report as it was simply slapped with "Bogus" and no attention was paid to it. My workaround was to compile as many extensions as I possibly could as shared modules, disabling everything that couldn't be built --with-EXTENSION=shared. Then, I rebuilt again, disabling everything that could be shared, and enabling everything that couldn't be shared. Once the two halves were smushed together, I had a working PHP install. This doesn't begin to address the third build I'll have to do t o get the CLI SAPI *AND* the Apache shared module. I still maintain that the build system provided with PHP is woefully inadequate and I would be willing to provide testing and more feedback if someone from the PHP team is willing to listen. It seems ridiculous that I can't do one build with CLI, Apache2, and all modules without the system collapsing in on itself. ./configure \ --prefix=/opt/local \ --with-config-file-path=/opt/local/etc \ --disable-bcmath \ --enable-calendar \ --disable-dbase \ --disable-dom \ --enable-exif \ --enable-ftp \ --enable-pcntl \ --enable-shmop \ --enable-sockets \ --enable-sysvmsg \ --enable-sysvsem \ --enable-sysvshm \ --enable-wddx \ --disable-xmlreader \ --disable-xmlwriter \ --with-bz2=/opt/local \ --with-curl=/opt/local \ --with-gettext=/opt/local \ --with-gmp=/opt/local \ --with-iconv-dir=/opt/local \ --with-libxml-dir=/opt/local \ --with-openssl=/opt/local \ --with-openssl-dir=/opt/local \ --with-pspell=/opt/local \ --with-zlib=/opt/local \ --with-zlib-dir=/opt/local \ --without-db4 \ --without-gd \ --without-gdbm \ --without-imap-ssl \ --without-imap \ --without-kerberos \ --without-ldap-sasl \ --without-ldap \ --without-libmbfl \ --without-mcrypt \ --without-mhash \ --without-mm \ --without-mysql \ --without-mysqli \ --without-ncurses \ --without-pdo-mysql \ --without-pdo-odbc \ --without-readline \ --without-snmp \ --without-unixODBC \ --without-xsl make make install make clean ./configure \ --prefix=/opt/local \ --with-config-file-path=/opt/local/etc \ --enable-bcmath=shared \ --disable-calendar \ --enable-dba=shared \ --enable-dbase=shared \ --enable-dom=shared \ --disable-exif \ --disable-ftp \ --disable-pcntl \ --disable-shmop \ --disable-sockets \ --disable-sysvmsg \ --disable-sysvsem \ --disable-sysvshm \ --disable-wddx \ --enable-xmlreader=shared \ --enable-xmlwriter=shared \ --without-bz2 \ --without-curl \ --without-gettext \ --without-gmp \ --with-iconv-dir=/opt/local \ --with-libxml-dir=/opt/local \ --with-openssl=/opt/local \ --with-openssl-dir=/opt/local \ --without-pspell \ --with-zlib=/opt/local \ --with-zlib-dir=/opt/local \ --with-db4=/opt/local \ --with-freetype-dir=/opt/local \ --with-gd=shared \ --with-gdbm=/opt/local \ --with-imap=shared,/opt/local \ --with-imap-ssl=/opt/local \ --with-jpeg-dir=/opt/local \ --with-kerberos=/opt/local \ --with-ldap=shared,/opt/local \ --with-ldap-sasl=/opt/local \ --with-libmbfl=shared,/opt/local \ --with-mcrypt=shared,/opt/local \ --with-mhash=shared,/opt/local \ --with-mysql=shared,/opt/local \ --with-mysqli=/opt/local/bin/mysql_config \ --with-ncurses=shared,/opt/local \ --with-pdo-mysql=shared,/opt/local \ --with-pdo-odbc=unixODBC,/opt/local \ --with-png-dir=/opt/local \ --with-readline=shared,/opt/local \ --with-snmp=shared,/opt/local \ --with-unixODBC=shared,/opt/local \ --with-xsl=shared,/opt/local \ --with-xmlrpc=shared make make install-modules Previous Comments: ------------------------------------------------------------------------ [2008-11-19 14:08:37] ben dot lentz at gmail dot com I've tried a few other things. Now I'm getting: make: execvp: /bin/sh: The parameter or environment lists are too long. ------------------------------------------------------------------------ [2008-11-07 01:55:53] ben dot lentz at gmail dot com I'm afraid not. As I wrote: > Compiling php-5.2.6 using gcc with IBM's linker, and GNU tools (coreutils/findutils/*sed* I've installed GNU sed 4.1.5 into /opt/local/bin, prefixed /opt/local/bin in my PATH, verified with 'which sed', and rebuilt from scratch. Same result. Also, the build completes with less modules enabled, regardless of the sed version. ------------------------------------------------------------------------ [2008-11-06 23:08:50] j...@php.net Due to a bug in the installed sed on your system the build fails. Install GNU sed and it should be okay. Thank you for your interest in PHP. ------------------------------------------------------------------------ [2008-11-06 19:01:24] ben dot lentz at gmail dot com Description: ------------ Compiling php-5.2.6 using gcc with IBM's linker, and GNU tools (coreutils/findutils/sed/awk/grep/automake/autoconf/etc.) with many modules results in an arg list too long error from /bin/sh (ksh). Reducing the number of modules included in the build results in a successful build. I have tried manually changing the Makefile from SHELL=/bin/sh to SHELL=/opt/local/bin/bash (GNU bash 3.2.0), but this results in a different error from the build... something about an unmatched backtick '`.' I have tried building some of these modules with=shared,$WHERE but it didn't help. I've examined the resulting Makefile and the PHP_GLOBAL_OBJS is so huge that it crashes IBM's vi (Line too long for current screen size.). I suspect here in lies the problem. grep '^PHP_GLOBAL_OBJS' Makefile | wc 1 587 17353 I have tried both the release php-5.2.6 and php5.2-200811061730, and the failure was the same in both cases. If someone could throw together a patch for the Makefile or configure script, I would be very grateful. Or, if there's a way to build this differently (sets of modules at a time or something), I would be grateful for some pointers. Thanks Reproduce code: --------------- ./configure \ --prefix=$WHERE \ --enable-shared=yes \ --enable-static=no \ --with-libxml-dir=$WHERE \ --with-openssl=$WHERE \ --with-openssl-dir=$WHERE \ --with-mysql=$WHERE \ --with-mysql-sock=$WHERE/var/lib/mysql/mysql.sock \ --with-kerberos=$WHERE \ --with-zlib=$WHERE \ --with-zlib-dir=$WHERE \ --with-bz2=$WHERE \ --with-curl=$WHERE \ --with-gdbm=$WHERE \ --with-db4=$WHERE \ --with-gd=$WHERE \ --with-jpeg-dir=$WHERE \ --with-png-dir=$WHERE \ --with-freetype-dir=$WHERE \ --with-gettext=$WHERE \ --with-imap=$WHERE \ --with-imap-ssl=$WHERE \ --with-ldap=$WHERE \ --with-ldap-sasl=$WHERE \ --with-mm=$WHERE \ --with-libexpat-dir=$WHERE \ --with-iconv=$WHERE \ --with-iconv-dir=$WHERE \ --with-xsl=$WHERE \ --enable-calendar \ --enable-sockets \ --enable-bcmath \ --enable-ftp \ --with-gmp=$WHERE \ --with-pspell=$WHERE \ --with-snmp=$WHERE \ --enable-mbstring \ --with-readline=$WHERE \ --enable-soap \ --enable-wddx \ --enable-zip \ --enable-shmop \ --enable-pcntl \ --enable-exif make Expected result: ---------------- A successful build of php-cli. Actual result: -------------- >From ksh: <snip> main/internal_functions.lo -lcrypt -lc-client -lz -lexslt -lexpat -lexpat -lmm -lhistory -lreadline -lncurses -laspell -lpspell -lrt -lmysqlclient -lldap -llber -lssl -lcrypto -lcrypt -lpam -liconv -liconv -lgmp -lintl -lgd -lfreetype -lpng -lz -ljpeg -lssl -lcrypto -ldb-4.6 -lgdbm -lcurl -lbz2 -lz -lssl -lcrypto -lm -lssl -lcrypto -lxml2 -lz -liconv -lm -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lcurl -lssl -lcrypto -llber -lldap -lz -lxml2 -lz -liconv -lm -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lxml2 -lz -liconv -lm -lnetsnmp -lxml2 -lz -liconv -lm -lxml2 -lz -liconv -lm -lxml2 -lz -liconv -lm -lxslt -lxml2 -lz -liconv -lm -lcrypt -o sapi/cgi/php-cgi make: execvp: /bin/sh: Arg list too long make: *** [sapi/cgi/php-cgi] Error 127 >From bash: <snip> main/internal_functions.lo -lcrypt -lc-client -lz -lexslt -lexpat -lexpat -lmm -lhistory -lreadline -lncurses -laspell -lpspell -lrt -lmysqlclient -lldap -llber -lssl -lcrypto -lcrypt -lpam -liconv -liconv -lgmp -lintl -lgd -lfreetype -lpng -lz -ljpeg -lssl -lcrypto -ldb-4.6 -lgdbm -lcurl -lbz2 -lz -lssl -lcrypto -lm -lssl -lcrypto -lxml2 -lz -liconv -lm -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lcurl -lssl -lcrypto -llber -lldap -lz -lxml2 -lz -liconv -lm -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lxml2 -lz -liconv -lm -lnetsnmp -lxml2 -lz -liconv -lm -lxml2 -lz -liconv -lm -lxml2 -lz -liconv -lm -lxslt -lxml2 -lz -liconv -lm -lcrypt -o sapi/cgi/php-cgi make: execvp: /opt/local/bin/bash: Arg list too long make: *** [sapi/cgi/php-cgi] Error 127 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=46511&edit=1