Hello,
Strange problem with Carbide.C++ 1.3 and linking.
Few quetions to Carbide developers team.
Most of errors with linking was solved. Need to help with 3 last.
My project compiles and links good on GCCE target and fails link on WINSCW.
Listing is quite big
mwldsym2.exe: Undefined symbol: 'void CAknView::Reserved_MtsmObject(void) (?Reserved_MtsmObject@CAknView@@UAEXXZ)'
mwldsym2.exe: referenced from 'const CBaseView::`vftable' (??_7CBaseView@@6B@~)' in baseview.o
mwldsym2.exe: Undefined symbol: 'void CAknView::Reserved_MtsmPosition(void) (?Reserved_MtsmPosition@CAknView@@UAEXXZ)'
mwldsym2.exe: referenced from 'const CBaseView::`vftable' (??_7CBaseView@@6B@~)' in baseview.o
mwldsym2.exe: Undefined symbol: 'void * CAknSettingItemList::ExtensionInterface(class TUid) (?ExtensionInterface@CAknSettingItemList@@UAEPAXVTUid@@@Z)'
mwldsym2.exe: referenced from 'const CAknCategorySettingListbox::`vftable' (??_7CAknCategorySettingListbox@@6B@~)' in CatItmDlg.o
mwldsym2.exe: referenced from 'const CAknExSettingListListbox::`vftable' (??_7CAknExSettingListListbox@@6B@~)' in aknSetLst.o
mwldsym2.exe: Undefined symbol: 'void CBaseView:: DoDeactivate(void) (?DoDeactivate@CBaseView@@EAEXXZ)'
mwldsym2.exe: referenced from 'const CFeatureMessageView::`vftable' (??_7CFeatureMessageView@@6B@~)' in FeatureMessageView.o
mwldsym2.exe: Undefined symbol: 'void CBaseView:: DoActivateL(class TVwsViewId const &, class TUid, class TDesC8 const &) (?DoActivateL@CBaseView@@EAEXABVTVwsViewId@@VTUid@@ABVTDesC8@@@Z)'
mwldsym2.exe: referenced from 'const CFeatureMessageView::`vftable' (??_7CFeatureMessageView@@6B@~)' in FeatureMessageView.o
mwldsym2.exe: Undefined symbol: 'void CAknSelectionListDialog::CAknSelectionListDialog_Reserved(void) (?CAknSelectionListDialog_Reserved@CAknSelectionListDialog@@UAEXXZ)'
mwldsym2.exe: referenced from 'const CMySelectionListDialog::`vftable' (??_7CMySelectionListDialog@@6B@~)' in ACAppUi.o
mwldsym2.exe: Undefined symbol: 'void CAknSelectionListDialog::CAknDialog_Reserved(void) (?CAknDialog_Reserved@CAknSelectionListDialog@@UAEXXZ)'
mwldsym2.exe: referenced from 'const CMySelectionListDialog::`vftable' (??_7CMySelectionListDialog@@6B@~)' in ACAppUi.o
mwldsym2.exe: Undefined symbol: 'void CAknSelectionListDialog::CEikDialog_Reserved_2(void) (?CEikDialog_Reserved_2@CAknSelectionListDialog@@UAEXXZ)'
mwldsym2.exe: referenced from 'const CMySelectionListDialog::`vftable' (??_7CMySelectionListDialog@@6B@~)' in ACAppUi.o
mwldsym2.exe: Undefined symbol: 'void CAknSelectionListDialog::CEikDialog_Reserved_1(void) (?CEikDialog_Reserved_1@CAknSelectionListDialog@@UAEXXZ)'
mwldsym2.exe: referenced from 'const CMySelectionListDialog::`vftable' (??_7CMySelectionListDialog@@6B@~)' in ACAppUi.o
mwldsym2.exe: Undefined symbol: 'void * CAknSelectionListDialog::ExtensionInterface(class TUid)
(?ExtensionInterface@CAknSelectionListDialog@@UAEPAXVTUid@@@Z)'
mwldsym2.exe: referenced from 'const CMySelectionListDialog::`vftable' (??_7CMySelectionListDialog@@6B@~)' in ACAppUi.o
Reason for CMySelectionListDialog not linked well is quite odd.
Class CMySelectionListDialog declared in .cpp file, private class that used only inside this cpp. Moving declaration into .h solved part of errors.
And now I got 5 errors:
Undefined symbol: 'void * CAknSettingItemList::ExtensionInterface(class TUid) (?ExtensionInterface@CAknSettingItemList@@UAEPAXVTUid@@@Z)'
Undefined symbol: 'void CAknView::Reserved_MtsmObject(void) (?Reserved_MtsmObject@CAknView@@UAEXXZ)'
Undefined symbol: 'void CAknView::Reserved_MtsmPosition(void) (?Reserved_MtsmPosition@CAknView@@UAEXXZ)'
Undefined symbol: 'void CBaseView:: DoActivateL(class TVwsViewId const &, class TUid, class TDesC8 const &) (?DoActivateL@CBaseView@@EAEXABVTVwsViewId@@VTUid@@ABVTDesC8@@@Z)'
Undefined symbol: 'void CBaseView:: DoDeactivate(void) (?DoDeactivate@CBaseView@@EAEXXZ)'
Investigating more,
class CBaseView : public CAknView.
was declared as private:
void CBaseView:: DoActivateL(class TVwsViewId const &, class TUid, class TDesC8 const &)
void CBaseView:: DoDeactivate(void)
and in CAknView declared as protected.
Now I got 3 errors.
Undefined symbol: 'void * CAknSettingItemList::ExtensionInterface(class TUid) (?ExtensionInterface@CAknSettingItemList@@UAEPAXVTUid@@@Z)'
Undefined symbol: 'void CAknView::Reserved_MtsmObject(void) (?Reserved_MtsmObject@CAknView@@UAEXXZ)'
Undefined symbol: 'void CAknView::Reserved_MtsmPosition(void) (?Reserved_MtsmPosition@CAknView@@UAEXXZ)'
And I have no idea how to fix it.






