Re: Link problem with gecko 1.9.2
philippe <[email protected]> Fri, 18 Nov 2011 04:03:51 -0800 (PST)
| Newsgroups | gmane.comp.mozilla.devel.embedding |
|---|---|
| Organization | http://groups.google.com |
| Message-ID | <14c47df9-4d4e-45c0-811e-93821c0e44d0@h31g2000pro.googlegroups.com> |
On Nov 18, 12:26 pm, "[email protected]" <[email protected]> wrote: > check your compiler flags. might be something similar to an issue I had > a few months back ... > > > > > > > > > > >> Examining the contents of xpcomglue.lib (using dumpbin /symbols ) I get > >> the following > > >> lInker: public: virtual unsigned int __thiscall > >> nsCreateInstanceByContractID::operator()(struct nsID const &,void * > > *)const > >> lib: public: virtual unsigned int __fastcall > >> nsCreateInstanceByContractID::operator()(struct nsID const &,void * > > *)const > >> The calling conventions are different for the 'missing' functions, they > >> are all marked as __fastcall when the library is built but somehow have > >> a different calling convention applied... > > >> once name mangling process is applied we get: > > >> ??RnsCreateInstanceByContractID@@UBEIABUnsID@@PAPAX@Z > >> ??RnsCreateInstanceByContractID@@UBIIABUnsID@@PAPAX@Z > > >> The cause is simple. In xpcom\base\nscore.h we have: > > >> #elif defined(XP_WIN) && !defined(_WIN64) > >> #define NS_FASTCALL __fastcall > >> #define NS_CONSTRUCTOR_FASTCALL > >> ... > > On 18/11/2011 10:25, philippe wrote: I'm using visual 2008 on windows. I could link mozmfc.