[mapserver-users] re: ms4w v5 broken on install -- php-cgi cannot find xerces entry point

the phloidster phloidster at yahoo.com
Mon May 26 20:22:14 EDT 2008


One reason for posting was to see if this is a
'unique' problem. 

This is not an issue in earlier version of ms4w, but
the php configuration seems to have changed.

Btw, this is on w2k server, and I'll try it on a
relatively 'fresh' XP machine next.


Reviewing all instances of xerces-c_2_7.dll and path
settings, there are 2 other instances of the
xerces-c_2_7.dll, with same version and build numbers,
but different dates (the version with MapServer is
earlier (Feb 2006)).

The other version is from MapGuide OS distribution,
which predated my MapServer install on my system, but
has a later timestamp (however, because MGOS is an
installer, not a zip, I cannot really trust the
timestamp on the dll).

Doing a DUMPBIN /EXPORTS on both versions shows that,
oddly, the preexsiting (MapGuide) copy does have the
entry point in it's exports list, but the version
bundled with ms4w does not (it does show other c++
overloads with different mangling, of that same
function).

The exports from the xerces-c_2_7.dll distributed with
ms4w shows these:
      520  207 00022616
??0XMLEntityDecl at xercesc_2_7@@QAE at QAVMemoryManager@1@@Z
        521  208 0002269B
??0XMLEntityDecl at xercesc_2_7@@QAE at QBG0QAVMemoryManager@1@@Z
        522  209 00022760
??0XMLEntityDecl at xercesc_2_7@@QAE at QBGGQAVMemoryManager@1@@Z
        523  20A 00022642
??0XMLEntityDecl at xercesc_2_7@@QAE at QBGQAVMemoryManager@1@@Z
  


The exports from the xerces-c_2_7.dll distributed with
MGOS shows:

        520  207 00023230
??0XMLEntityDecl at xercesc_2_7@@QAE at QAVMemoryManager@1@@Z
        521  208 000232AE
??0XMLEntityDecl at xercesc_2_7@@QAE at QB_W0QAVMemoryManager@1@@Z
        522  209 0002325C
??0XMLEntityDecl at xercesc_2_7@@QAE at QB_WQAVMemoryManager@1@@Z
        523  20A 00023342
??0XMLEntityDecl at xercesc_2_7@@QAE at QB_W_WQAVMemoryManager@1@@Z


The last one in the MGOS version is the entry point
being complained about, as not found by cgi-php.  


Odd that there are differences in the dll's, although
the build numbers (2.7.0.0) are the same.

I'll experiment with paths and versions and see what
happens.




>>>>>>>>>>>>>>>> 
Interesting.  Odd that no one else has been hitting
this issue.  So  
this is a fresh machine?  Is it possible that another
'xerces- 
c_2_7.dll' is being found in your environment?  Yes it
does smell like  
some version of "dll-hell".  Myself I often have  a
million different  
foss4g tools installed and I sometimes hit that dll
conflict wall.

What is your exact environment?  Maybe it's a
Vista-specific issue  
with MS4W?

-jeff




On 26-May-08, at 3:24 AM, the phloidster wrote:

> After installing the current download of ms4w and
then
> testing with browser url of localhost,
>
> the following error message appears:
>
> "entry point
> ??0XMLEntityDecl at xerces_2_7@@QAE at
QB_W_WQAVMemorymanager at 1@@Z
> could not be located in dynamic link library
> xerces-c_2_7.dll"
>
>
> this appears to come from php-cgi.exe
>
> the error appears as a dialog box, after dismissing,
> the default start page loads ok
>
> this happens after unzipping the ms4w.zip and
running
> manually, and also happens after running the install
> and running apache as service
>
> i have another instance of apache 2.28, php 5.25 and
> xerces 2.7 in a working configuration in another
> location, and do not get this problem (the other
> instance was not active, not loaded, not running)
>
> i wonder how all these binaries were built,
> was the xerces dll built or just bundled?  was
php-cgi
> exe built with same compiler as xerces? this smells
of
> compiler/linker version configuration or dependency
>


      



More information about the mapserver-users mailing list