I was very excited to see that LiteSpeed can handle the compilation of Apache for us. This is really cool. However, it's not working (for me at least).
I'm using 3.3.3 Standard on OS X 10.5.
I'll give a very simple configuration example, and the default, as well as the one I actually want to use (the settings I need if I'm going to run LiteSpeed in production with PHP).
#1: PHP5 with no options:
Version: 5.2.5
Extra PATH:
Install Path: /usr/local/litespeed/lsphp5
Parameters:
Opcode: None
#2 PHP with default options
Version: 5.2.5
Extra PATH:
Install Path: /usr/local/litespeed/lsphp5
Parameters: --with-mysqli --with-zlib --with-gd --enable-shmop --enable-track-vars --enable-sockets --enable-sysvsem --enable-sysvshm --enable-magic-quotes --enable-mbstring
Opcode: None
#3 PHP with my desired options
Version: 5.2.5
Extra PATH:
Install Path: /usr/local/litespeed/lsphp5
Parameters: --with-mysqli --with-zlib --with-gd --enable-shmop --enable-track-vars --enable-sockets --enable-sysvsem --enable-sysvshm --enable-magic-quotes --enable-mbstring --with-mhash --with-mcrypt --with-dom --enable-simplexml --with-pdo-mysql
Opcode: APC
Output for #1:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 24434 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 24434 100 24434 0 0 47518 0 --:--:-- --:--:-- --:--:-- 2386k
Forcing buildconf
using default Zend directory
buildconf: checking installation...
buildconf: autoconf version 2.59 (ok)
buildconf: Your version of autoconf likely contains buggy cache code.
Running cvsclean for you.
To avoid this, install autoconf-2.13.
rebuilding configure
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
rebuilding main/php_config.h.in
autoheader: WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot'
autoheader: WARNING: and `config.h.top', to define templates for `config.h.in'
autoheader: WARNING: is deprecated and discouraged.
autoheader:
autoheader: WARNING: Using the third argument of `AC_DEFINE' and
autoheader: WARNING: `AC_DEFINE_UNQUOTED' allows to define a template without
autoheader: WARNING: `acconfig.h':
autoheader:
autoheader: WARNING: AC_DEFINE([NEED_FUNC_MAIN], 1,
autoheader: [Define if a function `main' is needed.])
autoheader:
autoheader: WARNING: More sophisticated templates can also be produced, see the
autoheader: WARNING: documentation.
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
checking for egrep... grep -E
checking for a sed that does not truncate output... /usr/bin/sed
checking build system type... i686-apple-darwin9.1.0
checking host system type... i686-apple-darwin9.1.0
checking target system type... i686-apple-darwin9.1.0
shtool:echo:Warning: unable to determine terminal sequence for bold mode
shtool:echo:Warning: unable to determine terminal sequence for bold mode
checking for gcc... gcc
checking for C compiler default output file name... configure: error: C compiler cannot create executables
See `config.log' for more details.
Output for #2:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 24434 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 24434 100 24434 0 0 48441 0 --:--:-- --:--:-- --:--:-- 2169k
Forcing buildconf
using default Zend directory
buildconf: checking installation...
buildconf: autoconf version 2.59 (ok)
buildconf: Your version of autoconf likely contains buggy cache code.
Running cvsclean for you.
To avoid this, install autoconf-2.13.
rebuilding configure
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
rebuilding main/php_config.h.in
autoheader: WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot'
autoheader: WARNING: and `config.h.top', to define templates for `config.h.in'
autoheader: WARNING: is deprecated and discouraged.
autoheader:
autoheader: WARNING: Using the third argument of `AC_DEFINE' and
autoheader: WARNING: `AC_DEFINE_UNQUOTED' allows to define a template without
autoheader: WARNING: `acconfig.h':
autoheader:
autoheader: WARNING: AC_DEFINE([NEED_FUNC_MAIN], 1,
autoheader: [Define if a function `main' is needed.])
autoheader:
autoheader: WARNING: More sophisticated templates can also be produced, see the
autoheader: WARNING: documentation.
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
configure: error: invalid feature name:
sysvshm
Output for #3:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 24434 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 24434 100 24434 0 0 120k 0 --:--:-- --:--:-- --:--:-- 1988k
Forcing buildconf
using default Zend directory
buildconf: checking installation...
buildconf: autoconf version 2.59 (ok)
buildconf: Your version of autoconf likely contains buggy cache code.
Running cvsclean for you.
To avoid this, install autoconf-2.13.
rebuilding configure
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
rebuilding main/php_config.h.in
autoheader: WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot'
autoheader: WARNING: and `config.h.top', to define templates for `config.h.in'
autoheader: WARNING: is deprecated and discouraged.
autoheader:
autoheader: WARNING: Using the third argument of `AC_DEFINE' and
autoheader: WARNING: `AC_DEFINE_UNQUOTED' allows to define a template without
autoheader: WARNING: `acconfig.h':
autoheader:
autoheader: WARNING: AC_DEFINE([NEED_FUNC_MAIN], 1,
autoheader: [Define if a function `main' is needed.])
autoheader:
autoheader: WARNING: More sophisticated templates can also be produced, see the
autoheader: WARNING: documentation.
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
configure: error: invalid feature name:
sysvshm
It appears to me that part of the problem is that line breaks are being inserted. Note at the bottom of the last output "invalid feature name: sysvshm". That would only make sense if there was a line-break separating the -- from the sysvshm. And it just so happens that that is exactly where the line wrapped in the TEXTAREA. In order to test this theory, I tried the last two with a line break after each option, so none would be split across lines. Here's the output from only the last, due to a 10000 character limitation:
#3 again, with each configuration parameter on its own line:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 24434 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 24434 100 24434 0 0 117k 0 --:--:-- --:--:-- --:--:-- 2386k
Forcing buildconf
using default Zend directory
buildconf: checking installation...
buildconf: autoconf version 2.59 (ok)
buildconf: Your version of autoconf likely contains buggy cache code.
Running cvsclean for you.
To avoid this, install autoconf-2.13.
rebuilding configure
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
rebuilding main/php_config.h.in
autoheader: WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot'
autoheader: WARNING: and `config.h.top', to define templates for `config.h.in'
autoheader: WARNING: is deprecated and discouraged.
autoheader:
autoheader: WARNING: Using the third argument of `AC_DEFINE' and
autoheader: WARNING: `AC_DEFINE_UNQUOTED' allows to define a template without
autoheader: WARNING: `acconfig.h':
autoheader:
autoheader: WARNING: AC_DEFINE([NEED_FUNC_MAIN], 1,
autoheader: [Define if a function `main' is needed.])
autoheader:
autoheader: WARNING: More sophisticated templates can also be produced, see the
autoheader: WARNING: documentation.
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
configure: error: invalid package name: mysqli
I'm still getting "invalid package name" errors this way, so I'm not sure what to make of that.
The web based UI suggests that there's no need to download PHP source code or extension source code, simply by virtue of the fact that it is never mentioned anywhere, and web-based UIs usually don't require using the terminal. Perhaps I was misled by this, and the real problem is that I have to download source and put it somewhere first before it can be compiled?
The documentation talks about downloading and compiling, but it seems to be talking about ONLY doing it through the terminal, and it never mentions the web-based UI as a means of compiling. So it's my understanding that you can do it EITHER in the web UI OR on the command line, but that you don't need to use BOTH in order to compile PHP.
I'm using 3.3.3 Standard on OS X 10.5.
I'll give a very simple configuration example, and the default, as well as the one I actually want to use (the settings I need if I'm going to run LiteSpeed in production with PHP).
#1: PHP5 with no options:
Version: 5.2.5
Extra PATH:
Install Path: /usr/local/litespeed/lsphp5
Parameters:
Opcode: None
#2 PHP with default options
Version: 5.2.5
Extra PATH:
Install Path: /usr/local/litespeed/lsphp5
Parameters: --with-mysqli --with-zlib --with-gd --enable-shmop --enable-track-vars --enable-sockets --enable-sysvsem --enable-sysvshm --enable-magic-quotes --enable-mbstring
Opcode: None
#3 PHP with my desired options
Version: 5.2.5
Extra PATH:
Install Path: /usr/local/litespeed/lsphp5
Parameters: --with-mysqli --with-zlib --with-gd --enable-shmop --enable-track-vars --enable-sockets --enable-sysvsem --enable-sysvshm --enable-magic-quotes --enable-mbstring --with-mhash --with-mcrypt --with-dom --enable-simplexml --with-pdo-mysql
Opcode: APC
Output for #1:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 24434 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 24434 100 24434 0 0 47518 0 --:--:-- --:--:-- --:--:-- 2386k
Forcing buildconf
using default Zend directory
buildconf: checking installation...
buildconf: autoconf version 2.59 (ok)
buildconf: Your version of autoconf likely contains buggy cache code.
Running cvsclean for you.
To avoid this, install autoconf-2.13.
rebuilding configure
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
rebuilding main/php_config.h.in
autoheader: WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot'
autoheader: WARNING: and `config.h.top', to define templates for `config.h.in'
autoheader: WARNING: is deprecated and discouraged.
autoheader:
autoheader: WARNING: Using the third argument of `AC_DEFINE' and
autoheader: WARNING: `AC_DEFINE_UNQUOTED' allows to define a template without
autoheader: WARNING: `acconfig.h':
autoheader:
autoheader: WARNING: AC_DEFINE([NEED_FUNC_MAIN], 1,
autoheader: [Define if a function `main' is needed.])
autoheader:
autoheader: WARNING: More sophisticated templates can also be produced, see the
autoheader: WARNING: documentation.
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
checking for egrep... grep -E
checking for a sed that does not truncate output... /usr/bin/sed
checking build system type... i686-apple-darwin9.1.0
checking host system type... i686-apple-darwin9.1.0
checking target system type... i686-apple-darwin9.1.0
shtool:echo:Warning: unable to determine terminal sequence for bold mode
shtool:echo:Warning: unable to determine terminal sequence for bold mode
checking for gcc... gcc
checking for C compiler default output file name... configure: error: C compiler cannot create executables
See `config.log' for more details.
Output for #2:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 24434 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 24434 100 24434 0 0 48441 0 --:--:-- --:--:-- --:--:-- 2169k
Forcing buildconf
using default Zend directory
buildconf: checking installation...
buildconf: autoconf version 2.59 (ok)
buildconf: Your version of autoconf likely contains buggy cache code.
Running cvsclean for you.
To avoid this, install autoconf-2.13.
rebuilding configure
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
rebuilding main/php_config.h.in
autoheader: WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot'
autoheader: WARNING: and `config.h.top', to define templates for `config.h.in'
autoheader: WARNING: is deprecated and discouraged.
autoheader:
autoheader: WARNING: Using the third argument of `AC_DEFINE' and
autoheader: WARNING: `AC_DEFINE_UNQUOTED' allows to define a template without
autoheader: WARNING: `acconfig.h':
autoheader:
autoheader: WARNING: AC_DEFINE([NEED_FUNC_MAIN], 1,
autoheader: [Define if a function `main' is needed.])
autoheader:
autoheader: WARNING: More sophisticated templates can also be produced, see the
autoheader: WARNING: documentation.
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
configure: error: invalid feature name:
sysvshm
Output for #3:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 24434 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 24434 100 24434 0 0 120k 0 --:--:-- --:--:-- --:--:-- 1988k
Forcing buildconf
using default Zend directory
buildconf: checking installation...
buildconf: autoconf version 2.59 (ok)
buildconf: Your version of autoconf likely contains buggy cache code.
Running cvsclean for you.
To avoid this, install autoconf-2.13.
rebuilding configure
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
rebuilding main/php_config.h.in
autoheader: WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot'
autoheader: WARNING: and `config.h.top', to define templates for `config.h.in'
autoheader: WARNING: is deprecated and discouraged.
autoheader:
autoheader: WARNING: Using the third argument of `AC_DEFINE' and
autoheader: WARNING: `AC_DEFINE_UNQUOTED' allows to define a template without
autoheader: WARNING: `acconfig.h':
autoheader:
autoheader: WARNING: AC_DEFINE([NEED_FUNC_MAIN], 1,
autoheader: [Define if a function `main' is needed.])
autoheader:
autoheader: WARNING: More sophisticated templates can also be produced, see the
autoheader: WARNING: documentation.
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
configure: error: invalid feature name:
sysvshm
It appears to me that part of the problem is that line breaks are being inserted. Note at the bottom of the last output "invalid feature name: sysvshm". That would only make sense if there was a line-break separating the -- from the sysvshm. And it just so happens that that is exactly where the line wrapped in the TEXTAREA. In order to test this theory, I tried the last two with a line break after each option, so none would be split across lines. Here's the output from only the last, due to a 10000 character limitation:
#3 again, with each configuration parameter on its own line:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 24434 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 24434 100 24434 0 0 117k 0 --:--:-- --:--:-- --:--:-- 2386k
Forcing buildconf
using default Zend directory
buildconf: checking installation...
buildconf: autoconf version 2.59 (ok)
buildconf: Your version of autoconf likely contains buggy cache code.
Running cvsclean for you.
To avoid this, install autoconf-2.13.
rebuilding configure
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
rebuilding main/php_config.h.in
autoheader: WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot'
autoheader: WARNING: and `config.h.top', to define templates for `config.h.in'
autoheader: WARNING: is deprecated and discouraged.
autoheader:
autoheader: WARNING: Using the third argument of `AC_DEFINE' and
autoheader: WARNING: `AC_DEFINE_UNQUOTED' allows to define a template without
autoheader: WARNING: `acconfig.h':
autoheader:
autoheader: WARNING: AC_DEFINE([NEED_FUNC_MAIN], 1,
autoheader: [Define if a function `main' is needed.])
autoheader:
autoheader: WARNING: More sophisticated templates can also be produced, see the
autoheader: WARNING: documentation.
aclocal.m4:2141: PHP_PROG_LEX is expanded from...
configure: error: invalid package name: mysqli
I'm still getting "invalid package name" errors this way, so I'm not sure what to make of that.
The web based UI suggests that there's no need to download PHP source code or extension source code, simply by virtue of the fact that it is never mentioned anywhere, and web-based UIs usually don't require using the terminal. Perhaps I was misled by this, and the real problem is that I have to download source and put it somewhere first before it can be compiled?
The documentation talks about downloading and compiling, but it seems to be talking about ONLY doing it through the terminal, and it never mentions the web-based UI as a means of compiling. So it's my understanding that you can do it EITHER in the web UI OR on the command line, but that you don't need to use BOTH in order to compile PHP.