Cannot start apache2 with php5 due to missing sqlite3
Ryan Schmidt
ryandesign at macports.org
Sat Mar 31 03:28:21 PDT 2007
On Mar 30, 2007, at 22:07, Tom Brice wrote:
> After a little reading I see that PHP5 comes with sqlite3. The
> only conclusion that I can come to is that something is linking to
> the supplied sqlite3 rather than MacPorts version and the supplied
> sqlite3 fails on OS X 10.3.9 for some reason. Here's how I came to
> this end:
>
> * The php5 install that I cannot get to work with apache2 via
> mod_php does work in the CLI.
> * In the darwin 7 variant of the php5 Portfile I added "--with-pdo-
> sqlite=${prefix}/bin/sqlite3" to the configure.args-append line.
> Building this still fails mod_php usage with apache2.
> * I changed the darwin 7 variant to "configure.args-append --
> without-sqlite --without-pdo-sqlite" and reintsalled. THIS WORKS
> with mod_php and apache2!!
>
> I wasn't using sqlite3 with php before so I can live without it.
> However, I think it might be "fixable" by making sure that php uses
> the MacPorts sqlite3 rather that the supplied version. By adding
> the appropriate DIR to "--with-sqlite=DIR --with-pdo-sqlite=DIR" it
> might work. I guess it should be "{prefix}/bin/sqlite3". the
> configure file states:
>
> "Use --with-sqlite=DIR to specify DIR where
> Sqlite include and library files are located,
> if not using bundled library."
I had tried before to fix the sqlite situation in the php5 port and
reached an impasse with an error message which I did not have time to
research. Searching for that error message today brought me to this
bug report, which turns out not to be a bug:
http://bugs.php.net/bug.php?id=30749
As I understand it now, the standard sqlite support in php5 uses and
requires sqlite2, a version of which is included with php5. As of php
5.1, pdo sqlite support is also available, which uses sqlite3, and in
the absence of instructions to the contrary, I believe it is this pdo
sqlite component which was reaching out to the system's sqlite3
library rather than the MacPorts version.
I have committed a new revision of the php5 port which disables
standard and pdo sqlite support, and adds a new +sqlite variant for
those who want to reenable it:
http://trac.macosforge.org/projects/macports/changeset/23410
This seems to work for me on 10.4.9 Intel. Will someone with access
to 10.3.9 PPC please test it there and let me know if both versions
work properly (both when specifying +sqlite and when not)? Thanks.
More information about the macports-users
mailing list