perl-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gerald Richter" <>
Subject Re: AxKit working on ActivePerl
Date Mon, 04 Sep 2000 06:24:44 GMT
> I had thought this use of a static mod_perl lib was similar
> in spirit to what Matt did with AxKit - include all the
> *.obj files at link time, but still build mod_perl normally
> with a dll.

Yes, it is

> As a test, I tried libapreq again, and found
> it was missing 3 symbols from ApacheModulePerl.lib. I then
> tried instead linking it in with a static mod_perl lib,
> which resolved the missing symbols. After installing, some simple
> tests seemed to indicate Apache::Request works OK.

It will work for functions that doesn't access mod_perl C-level-globals
(Perl-level-globals still work, because you have just one Perlinterpreter)

> However, maybe
> this is a bad route in principle? Is it the use of the static
> mod_perl lib to resolve things in an external package, together
> with mod_perl's subsequent use of the DLL, that could
> potentially lead to problems?

Yes, it will and you will bring an additional mod_perl binary into memory
for every module you link against this lib, while using the DLL all modules
share the same binary, thereby reducing the memory usage. (That's idea of
DLL or so files on Unix, that the code has to be only once in memory and can
be used by many applications)

> >
> > What I suggest is just to add some more entries to the symbol table of
> > DLL, makeing this symbols public viewable and thereby, makeing it
> > that other modules can use them. For the first step it would be the
> > to just creating a DEF file, so you don't have to modifiy any sources,
> > can make the linker happy. In the second step it has to be decided,
> > symbol belongs to the mod_perl API and should be exported by the DLL ( I
> > think Doug should take a look at this list), then using the API macros
> > Apache would make it more portable to other platforms.
> This sounds like a much more coherent approach - I guess this static
> lib approach, if it was OK, might have been useful in the meantime
> until these things are decided ... I'll take a stab at seeing
> what should be put into the DEF file.

Let me know if I can provide anything that could be helpfull. I have
downloaded ACtiveState Perl, but didn't get the time to install and test it
yet. I hope to get a little bit more time for this towards the end of the
week. Than I could do some more practical work, if you not already solved it
until then.


Gerald Richter    ecos electronic communication services gmbh
Internetconnect * Webserver/-design/-datenbanken * Consulting

Post:       Tulpenstrasse 5         D-55276 Dienheim b. Mainz
E-Mail:         Voice:    +49 6133 925151
WWW:      Fax:      +49 6133 925152

View raw message