You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by "Philip M. Gollucci" <ph...@p6m7g8.com> on 2003/09/09 05:29:38 UTC
Portability Question
Say I want the same code to work under:
Win2k/ISS5.0&CGI
Win2k/IIS5.0&PerlEX
Win2k/Apache1&mod_perl1
Win2k/Apache2&mod_perl2
FreeBSD/Linux/Sun/Apache1&mod_perl1
FreeBSD/Linux/Sun/Apache2&mod_perl2
FreeBSD/Linux/Sun/Apache1,2&CGI
Assume perl 5.6.1 ActiveState on Win2k and perl 5.8.0 on Unix
environments.
Assume CGI.pm >= 2.98
I haven't really had a hard time with this except:
CGI.pm ($query = CGI->new())
Spreadsheet::WriteExcel (0.26 or less for Win2k/ISS5.0&PerlEx current is
.40 most likely not thread safe)
GD.pm (ActiveState only has GD1.x for 5.6.1 and compile errors for GD2.x
on 5.8.0)
XML::Simple (Active State5.6.1 is only at 1.06 missing some critical
features from the current ~2.05)
DateTime modules (datetime.perl.org ActiveState 5.6.1 has nothing... I
think 5.8.0 might have some)
use lib qw(.......) (ISS automagically adds "." to this. Under unix,
this is not the case
First thought, use FindBin, but its not thread safe, so mod_perl2.x
fails.
Only anwser I've come up with is to have an "installation" script
edit a place holder in the "main" file
Text::Aspell ... egad... One of my co-workers has compiled this for
5.6.1 ActiveState on Win2k/WinXP Pro using MSCV++ 6.0
if anyone is interested since ActiveState has nothing.
Does anyone have any comments/suggestions/ideas on this ?
Despite all the ranting, I must say that all of you have done
exceptional jobs to make Apache/mod_perl the finest of them all.
I haven't done any hard benchmarking, but it looks link
Apache2/mod_perl2 on Win2k is substantially(2-3x) faster then IIS5.0/PerlEx.
However, "caching" is much more beneficially in IIS5.0/PerlEx then
apache1.x/mod_perl1.x (rarely if ever get server by the same child in
Apache)
Thanks All!
Re: Portability Question
Posted by Perrin Harkins <pe...@elem.com>.
On Mon, 2003-09-08 at 23:29, Philip M. Gollucci wrote:
> I haven't really had a hard time with this except:
> CGI.pm ($query = CGI->new())
What about it? Is it not working?
> Spreadsheet::WriteExcel (0.26 or less for Win2k/ISS5.0&PerlEx current is
> .40 most likely not thread safe)
> GD.pm (ActiveState only has GD1.x for 5.6.1 and compile errors for GD2.x
> on 5.8.0)
> XML::Simple (Active State5.6.1 is only at 1.06 missing some critical
> features from the current ~2.05)
> DateTime modules (datetime.perl.org ActiveState 5.6.1 has nothing... I
> think 5.8.0 might have some)
Building your own .ppm files seems like the only way to solve these.
> use lib qw(.......) (ISS automagically adds "." to this. Under unix,
> this is not the case
> First thought, use FindBin, but its not thread safe, so mod_perl2.x
> fails.
> Only anwser I've come up with is to have an "installation" script
> edit a place holder in the "main" file
You could use a config file or an environment variable, but what is the
problem with FindBin exactly? I haven't heard about it not being thread
safe before.
> However, "caching" is much more beneficially in IIS5.0/PerlEx then
> apache1.x/mod_perl1.x (rarely if ever get server by the same child in
> Apache)
In apache 1.x on Win32, you always get the same child since there is
only one. With 1.x on FreeBSD, the allocation will basically
round-robin through all of your live apache children.
- Perrin
Re: Portability Question
Posted by Randy Kobes <ra...@theoryx5.uwinnipeg.ca>.
On Mon, 8 Sep 2003, Philip M. Gollucci wrote:
> Say I want the same code to work under:
> Win2k/ISS5.0&CGI
> Win2k/IIS5.0&PerlEX
> Win2k/Apache1&mod_perl1
> Win2k/Apache2&mod_perl2
>
> FreeBSD/Linux/Sun/Apache1&mod_perl1
> FreeBSD/Linux/Sun/Apache2&mod_perl2
> FreeBSD/Linux/Sun/Apache1,2&CGI
>
> Assume perl 5.6.1 ActiveState on Win2k and perl 5.8.0 on Unix
> environments.
> Assume CGI.pm >= 2.98
>
> I haven't really had a hard time with this except:
[ ... ]
> GD.pm (ActiveState only has GD1.x for 5.6.1 and compile errors for GD2.x
> on 5.8.0)
> XML::Simple (Active State5.6.1 is only at 1.06 missing some critical
> features from the current ~2.05)
[ ... ]
> Text::Aspell ... egad... One of my co-workers has compiled this for
> 5.6.1 ActiveState on Win2k/WinXP Pro using MSCV++ 6.0
> if anyone is interested since ActiveState has nothing.
We have the above three packages in our 5.8 repository at
http://theoryx5.uwinnipeg.ca/ppms/.
--
best regards,
randy kobes