PDA

View Full Version : ClanGUI in latest 2.2 - new dependency



sphair
05-18-2010, 10:44 AM
If you are using ClanGUI in the 2.2 branch, there is now a dependency to ClanCSSLayout. This dependency is not automatic (yet), so you'll need to add an include to make sure it is linked in.



#include <ClanLib/csslayout.h>


If not you will get errors like:
1>clanGUI-static-mt-debug.lib(gui_theme_layout_manager.obj) : error LNK2019: unresolved external symbol "public: void __thiscall CL_CSSLayout::set_root_element(class CL_CSSLayoutElement)" (?set_root_element@CL_CSSLayout@@QAEXVCL_CSSLayout Element@@@Z) referenced in function "public: class CL_CSSLayout __thiscall CL_GUIThemeLayoutManager_Impl::create_layout(class CL_StringContainer<char,class CL_StringReference<char,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class CL_DomElement &)" (?create_layout@CL_GUIThemeLayoutManager_Impl@@QAE ?AVCL_CSSLayout@@V?$CL_StringContainer@DV?$CL_Stri ngReference@DV?$basic_string@DU?$char_traits@D@std @@V?$allocator@D@2@@std@@@@V?$basic_string@DU?$cha r_traits@D@std@@V?$allocator@D@2@@std@@@@AAVCL_Dom Element@@@Z)
1>clanGUI-static-mt-debug.lib(gui_theme_layout_manager.obj) : error LNK2019: unresolved external symbol "public: class CL_CSSLayoutElement __thiscall CL_CSSLayout::create_element(class CL_StringContainer<char,class CL_StringReference<char,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > const &)" (?create_element@CL_CSSLayout@@QAE?AVCL_CSSLayoutE lement@@ABV?$CL_StringContainer@DV?$CL_StringRefer ence@DV?$basic_string@DU?$char_traits@D@std@@V?$al locator@D@2@@std@@@@V?$basic_string@DU?$char_trait s@D@std@@V?$allocator@D@2@@std@@@@@Z) referenced in function "public: class CL_CSSLayout __thiscall CL_GUIThemeLayoutManager_Impl::create_layout(class CL_StringContainer<char,class CL_StringReference<char,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class CL_DomElement &)" (?create_layout@CL_GUIThemeLayoutManager_Impl@@QAE ?AVCL_CSSLayout@@V?$CL_StringContainer@DV?$CL_Stri ngReference@DV?$basic_string@DU?$char_traits@D@std @@V?$allocator@D@2@@std@@@@V?$basic_string@DU?$cha r_traits@D@std@@V?$allocator@D@2@@std@@@@AAVCL_Dom Element@@@Z)
1>clanGUI-static-mt-debug.lib(gui_theme_layout_manager.obj) : error LNK2019: unresolved external symbol "public: __thiscall CL_CSSLayout::CL_CSSLayout(void)" (??0CL_CSSLayout@@QAE@XZ) referenced in function "public: class CL_CSSLayout __thiscall CL_GUIThemeLayoutManager_Impl::create_layout(class CL_StringContainer<char,class CL_StringReference<char,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class CL_DomElement &)" (?create_layout@CL_GUIThemeLayoutManager_Impl@@QAE ?AVCL_CSSLayout@@V?$CL_StringContainer@DV?$CL_Stri ngReference@DV?$basic_string@DU?$char_traits@D@std @@V?$allocator@D@2@@std@@@@V?$basic_string@DU?$cha r_traits@D@std@@V?$allocator@D@2@@std@@@@AAVCL_Dom Element@@@Z)
1>clanGUI-static-mt-debug.lib(gui_theme_layout_manager.obj) : error LNK2019: unresolved external symbol "public: class CL_CSSLayoutText __thiscall CL_CSSLayoutElement::create_text(class CL_StringContainer<char,class CL_StringReference<char,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > const &)" (?create_text@CL_CSSLayoutElement@@QAE?AVCL_CSSLay outText@@ABV?$CL_StringContainer@DV?$CL_StringRefe rence@DV?$basic_string@DU?$char_traits@D@std@@V?$a llocator@D@2@@std@@@@V?$basic_string@DU?$char_trai ts@D@std@@V?$allocator@D@2@@std@@@@@Z) referenced in function "public: void __thiscall CL_GUIThemeLayoutManager_Impl::create_layout_parts (class CL_DomNode,class CL_CSSLayoutElement &)" (?create_layout_parts@CL_GUIThemeLayoutManager_Imp l@@QAEXVCL_DomNode@@AAVCL_CSSLayoutElement@@@Z)
1>clanGUI-static-mt-debug.lib(gui_theme_layout_manager.obj) : error LNK2019: unresolved external symbol "public: void __thiscall CL_CSSLayoutElement::apply_properties(class CL_StringContainer<char,class CL_StringReference<char,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > const &)" (?apply_properties@CL_CSSLayoutElement@@QAEXABV?$C L_StringContainer@DV?$CL_StringReference@DV?$basic _string@DU?$char_traits@D@std@@V?$allocator@D@2@@s td@@@@V?$basic_string@DU?$char_traits@D@std@@V?$al locator@D@2@@std@@@@@Z) referenced in function "public: void __thiscall CL_GUIThemeLayoutManager_Impl::create_layout_parts (class CL_DomNode,class CL_CSSLayoutElement &)" (?create_layout_parts@CL_GUIThemeLayoutManager_Imp l@@QAEXVCL_DomNode@@AAVCL_CSSLayoutElement@@@Z)
1>clanGUI-static-mt-debug.lib(gui_theme_layout_manager.obj) : error LNK2019: unresolved external symbol "public: void __thiscall CL_CSSLayoutElement::apply_properties(class CL_CSSPropertyList2 const &)" (?apply_properties@CL_CSSLayoutElement@@QAEXABVCL_ CSSPropertyList2@@@Z) referenced in function "public: void __thiscall CL_GUIThemeLayoutManager_Impl::create_layout_parts (class CL_DomNode,class CL_CSSLayoutElement &)" (?create_layout_parts@CL_GUIThemeLayoutManager_Imp l@@QAEXVCL_DomNode@@AAVCL_CSSLayoutElement@@@Z)
1>clanGUI-static-mt-debug.lib(gui_theme_layout_manager.obj) : error LNK2019: unresolved external symbol "public: class CL_CSSPropertyList2 __thiscall CL_CSSDocument2::select(class CL_DomElement const &,class CL_StringContainer<char,class CL_StringReference<char,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > const &)" (?select@CL_CSSDocument2@@QAE?AVCL_CSSPropertyList 2@@ABVCL_DomElement@@ABV?$CL_StringContainer@DV?$C L_StringReference@DV?$basic_string@DU?$char_traits @D@std@@V?$allocator@D@2@@std@@@@V?$basic_string@D U?$char_traits@D@std@@V?$allocator@D@2@@std@@@@@Z) referenced in function "public: void __thiscall CL_GUIThemeLayoutManager_Impl::create_layout_parts (class CL_DomNode,class CL_CSSLayoutElement &)" (?create_layout_parts@CL_GUIThemeLayoutManager_Imp l@@QAEXVCL_DomNode@@AAVCL_CSSLayoutElement@@@Z)
1>clanGUI-static-mt-debug.lib(gui_theme_layout_manager.obj) : error LNK2019: unresolved external symbol "public: class CL_CSSLayoutElement __thiscall CL_CSSLayoutElement::create_element(class CL_StringContainer<char,class CL_StringReference<char,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > const &)" (?create_element@CL_CSSLayoutElement@@QAE?AV1@ABV? $CL_StringContainer@DV?$CL_StringReference@DV?$bas ic_string@DU?$char_traits@D@std@@V?$allocator@D@2@ @std@@@@V?$basic_string@DU?$char_traits@D@std@@V?$ allocator@D@2@@std@@@@@Z) referenced in function "public: void __thiscall CL_GUIThemeLayoutManager_Impl::create_layout_parts (class CL_DomNode,class CL_CSSLayoutElement &)" (?create_layout_parts@CL_GUIThemeLayoutManager_Imp l@@QAEXVCL_DomNode@@AAVCL_CSSLayoutElement@@@Z)
1>clanGUI-static-mt-debug.lib(gui_theme_layout_manager.obj) : error LNK2019: unresolved external symbol "public: __thiscall CL_CSSDocument2::CL_CSSDocument2(void)" (??0CL_CSSDocument2@@QAE@XZ) referenced in function "public: __thiscall CL_GUIThemeLayoutManager_Impl::CL_GUIThemeLayoutMa nager_Impl(void)" (??0CL_GUIThemeLayoutManager_Impl@@QAE@XZ)
1>clanGUI-static-mt-debug.lib(gui_theme_layout_manager.obj) : error LNK2019: unresolved external symbol "public: void __thiscall CL_CSSDocument2::add_sheet(class CL_StringContainer<char,class CL_StringReference<char,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > const&)" (?add_sheet@CL_CSSDocument2@@QAEXABV?$CL_StringCon tainer@DV?$CL_StringReference@DV?$basic_string@DU? $char_traits@D@std@@V?$allocator@D@2@@std@@@@V?$ba sic_string@DU?$char_traits@D@std@@V?$allocator@D@2 @@std@@@@@Z) referenced in function "public: __thiscall CL_GUIThemeLayoutManager::CL_GUIThemeLayoutManager (class CL_StringReference<char,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > const &,class CL_StringReference<char,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > const &)" (??0CL_GUIThemeLayoutManager@@QAE@ABV?$CL_StringRe ference@DV?$basic_string@DU?$char_traits@D@std@@V? $allocator@D@2@@std@@@@0@Z)
1>clanGUI-static-mt-debug.lib(gui_theme_layout_manager.obj) : error LNK2019: unresolved external symbol "public: __thiscall CL_CSSDocument2::~CL_CSSDocument2(void)" (??1CL_CSSDocument2@@QAE@XZ) referenced in function "public: __thiscall CL_GUIThemeLayoutManager_Impl::~CL_GUIThemeLayoutM anager_Impl(void)" (??1CL_GUIThemeLayoutManager_Impl@@QAE@XZ)

rombust
05-19-2010, 07:25 AM
I have modified the GUI library include pragma's to include clanCSSLayout