Pre-ITP: apache/mod_php

Reini Urban rurban@x-ray.at
Thu Sep 23 22:33:00 GMT 2004


Brian Dessent schrieb:
> Igor Pechtchanski wrote:
>>>B) Compiled in cygphp4.dll (bundled libs) / won't work shared:
>>>bcmath, calendar, dba (gdbm, cdb, cdb_make, inifile, flatfile), dbase,
>>>dbx, dio, exif, filepro, ftp, mysql, pcre, xml
>>
>>This may be a naive question, but why can't they work as shared libs?
>>I've found that the main problem with dlopen()ing shared libs that depend
>>on other shared libs is that the other shared libs have to be in the PATH.
>>Is there anything beyond that that's required?

> I had thought of that one.  All the extension DLLs are linked against
> the main cygphp4.dll, which itself is not in the path; it lives in
> /usr/lib/apache/.  I tried adding that to the path of the service using
> cygrunsrv, but I still got the errors.  I suppose I never tried putting
> /usr/lib/php4/20020429/ (the dir where the extensions are stored) in the
> path - but doesn't the Windows .DLL search order go: "cwd, directory of
> .dll, path"?

no please, this will not work. cygphp4.dll must be in /usr/bin/
that must be the reason why some of your extensions didn't work.

mod_php4.dll could go to /usr/lib/apache/
cygphp4.dll is also required by all other sapi modules:
php-cli.exe, php-cgi.exe, the libhttpd php sapi module, ...

it should be in the directory of the master process
(in our case /usr/sbin/ for httpd and /usr/lib/php/bin/ for cgi) or in 
the path.

>>Since setup doesn't support subcategories, an artificial grouping using
>>the "apache-" prefix is preferable (unless the package truly is
>>independent).  I'd also prefer "apache-mod_php4" to "apache-php4", since
>>it reflects what other distributions call it, and allows a separate
>>distribution of command-line php4 with CGI bindings for apache as
>>"apache-php4".  Since setup is now resizable, don't worry too much about
>>longer package names.
> 
> Yes, I do like the idea of having all the related packages grouped
> together with the Apache prefix, so I think I agree that
> "apache-mod_php4", "apache-mod_ssl", and so on are good choices.  Good
> point also about leaving "apache-php4" for a CGI version.

ok. but please don't forget the cli also. the cli is very good to catch 
errors, very useful for quick-n-dirty scripting, and it is required for 
pear to work.
-- 
Reini Urban
http://xarch.tu-graz.ac.at/home/rurban/



More information about the Cygwin-apps mailing list