the errors are bellow:
..\..\..\..\..\..\Symbian\9.1\S60_3rd_MR\EPOC32\RELEASE\ARMV5\UREL\xpcom_core_symbian.lib(nsXPComInit.o).rodata+0xca8): multiple definition of `vtable for nsGetClassObjectByContractID'
..\..\..\..\..\..\Symbian\9.1\S60_3rd_MR\EPOC32\RELEASE\ARMV5\UREL\embed_base_symbian.lib(nsEmbedAPI.o).rodata+0x130): first defined here
..\..\..\..\..\..\Symbian\9.1\S60_3rd_MR\EPOC32\RELEASE\ARMV5\UREL\xpcom_core_symbian.lib(nsXPComInit.o).rodata+0x1258): multiple definition of `typeinfo for nsGetClassObjectByContractID'
..\..\..\..\..\..\Symbian\9.1\S60_3rd_MR\EPOC32\RELEASE\ARMV5\UREL\embed_base_symbian.lib(nsEmbedAPI.o).rodata+0x23c): first defined here
..\..\..\..\..\..\Symbian\9.1\S60_3rd_MR\EPOC32\RELEASE\ARMV5\UREL\xpcom_core_symbian.lib(nsXPComInit.o).rodata+0xcb8): multiple definition of `vtable for nsGetClassObjectByCID'
..\..\..\..\..\..\Symbian\9.1\S60_3rd_MR\EPOC32\RELEASE\ARMV5\UREL\embed_base_symbian.lib(nsEmbedAPI.o).rodata+0x140): first defined here
..\..\..\..\..\..\Symbian\9.1\S60_3rd_MR\EPOC32\RELEASE\ARMV5\UREL\xpcom_core_symbian.lib(nsXPComInit.o).rodata+0x122c): multiple definition of `typeinfo for nsGetClassObjectByCID'
..\..\..\..\..\..\Symbian\9.1\S60_3rd_MR\EPOC32\RELEASE\ARMV5\UREL\embed_base_symbian.lib(nsEmbedAPI.o).rodata+0x210): first defined here
..\..\..\..\..\..\Symbian\9.1\S60_3rd_MR\EPOC32\RELEASE\ARMV5\UREL\xpcom_core_symbian.lib(nsXPComInit.o).rodata+0xcc8): multiple definition of `vtable for nsCreateInstanceFromFactory'
..\..\..\..\..\..\Symbian\9.1\S60_3rd_MR\EPOC32\RELEASE\ARMV5\UREL\embed_base_symbian.lib(nsEmbedAPI.o).rodata+0x150): first defined here
the class is defined the follow:
class NS_COM_GLUE nsGetClassObjectByContractID : public nsCOMPtr_helper
{
public:
nsGetClassObjectByContractID( const char* aContractID, nsresult* aErrorPtr )
: mContractID(aContractID),
mErrorPtr(aErrorPtr)
{
// nothing else to do here
}
virtual nsresult NS_FASTCALL operator()( const nsIID&, void** ) const;
private:
const char* mContractID;
nsresult* mErrorPtr;
};
first, how to deal with the errors?
secnd, the symbian don't support RTTI(9.0 before), but why does it generate the “typeinfo” when I compile the gcce version? (vs 2003 , carbide 2.01, 3.0 MR)

.rodata+0xca8): multiple definition of `vtable for nsGetClassObjectByContractID'
Reply With Quote

