Shared ODBC modules for PHP 4.0.x
| From: | Martin Edlman | Date: | Sat, 23 Dec 2000 00:14:48 +0000 |
| Subject: | Shared ODBC modules for PHP 4.0.x | ||
| Groups: | php.install | ||
| Request: | Send a blank email to php-install+get-1326@lists.php.net to get a copy of this message | ||
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
HI,
I was trying to compile PHP 4.0.3pl1 with ODBC as shared module, but I was
not successfull. I debugged the configure script to find out that the ODBC
module can be made shared only if '$shared' is set to 'shared' or
'yes'
(line +- #26000)
> if test "$shared" != "shared" && test "$shared" !=
> "yes"; then
I searched all the parts of the script where ODBC drivers are processed to
find out that the '$shared' is set only in DBMaker. But there is a way to
make the ODBC modules shared for all ODBC drivers. All we need is to set
the '$shared' to 'shared' or 'yes'. This can be achieved by using
- --with-gd=shared. Strange huh?
The trick is that the '$shared' variable is not reset after previous or
before actual use. So its value is set to 'yes' in gd and kept until the
ODBC test section is reached. And that's the place where it does the job.
I suppose this is a bug in some m4 file or in some script which generates
the configure. I assume that the configure script should not act like it
does. The variables used in some block should be reset before they're
used.
But when this is fixed there is no way to make odbc module shared (until
you use DBMaker). So it would be great if someone who knows how and where
to modify other ODBC configs to allow them to be shared do this. I have
tested iodbc and unixODBC.
Or did I something wrong by making the ODBC module shared when it's not
officially supported? Will it work? I did not test it yet. Anyway I wanted
to report the bug.
Edas
-----BEGIN PGP SIGNATURE-----
Version: PGP 6.5.8
iQA/AwUBOkPueSc1LHwOXLuEEQLlzgCfcgJCmTYMzRRm/fawS6d+r/4gAQIAnAt/
9n0cyLa0eV7w+m21R+WX98xc
=sgeE
-----END PGP SIGNATURE-----