469,898 Members | 1,605 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,898 developers. It's quick & easy.

Undefined symbol in C++ template member function when put on vxWorks

When I compile to code using g++arm of VxWorks 5.5 and put it on my
board i get the follwing undefined symbols:-
Cpool and Csingleton are template classes. CPool has the static member
variables:-ms_uCapacity ,ms_uAllocatedCount ,
ms_uLockCapacity ,ms_pmutex

-ld < yamit/apps1.out
Undefined symbol: _Q23m5tt5CPool1ZQ23m5t10CMarshaler$ms_uCapacity
(binding 1 type 0)
Undefined symbol: _Q23m5tt5CPool1ZQ23m5t10CMarshaler$ms_uAllocatedCo unt
(binding 1 type 0)
Undefined symbol: resolvQuery (binding 1 type 0)
Undefined symbol: _Q23m5tt5CPool1ZQ23m5t10CMarshaler$ms_pBlockAlloca tor
(binding 1 type 0)
Undefined symbol:
_Q23m5tt10CSingleton1ZQ23m5t12CTimeUpdater$ms_pIns tance (binding 1 type
0)
Undefined symbol: _Q23m5tt10CSingleton1ZQ23m5t7CCrypto$ms_pInstance
(binding 1 type 0)
Undefined symbol: resolvDNExpand (binding 1 type 0)
Undefined symbol: _Q23m5tt5CPool1ZQ23m5t10CMarshaler$ms_uLockCapacit y
(binding 1 type 0)
Undefined symbol: _Q23m5tt5CPool1ZQ23m5t10CMarshaler$ms_pmutex (binding
1 type 0)
Undefined symbol:
_Q23m5tt10CSingleton1ZQ23m5t17CDefaultAllocator$ms _pInstance (binding 1
type 0)
ld error: Module contains undefined symbol(s) and may be unusable.
value = 0 = 0x0

-voipInit
YM1A call to M5T code/n
Data abort
Exception address: 0x0064c998
Current Processor Status Register: 0x80000013

trcStack aborted: error in frame
184430 yystart +74c: voipInit ()
63b55c voipInit +14 :
m5t::CFrameworkInitializer::Initialize(void) ()
63af50 m5t::CFrameworkInitializer::Initialize(void)+220:
m5t::InitializeCTime(void) ()
63d7a4 m5t::InitializeCTime(void)+c :
m5t::CTime::InitializeCTime(void) ()
63d698 m5t::CTime::InitializeCTime(void)+78 :
m5t::CTimeZone::CTimeZone(char const *) ()
63fb0c m5t::CTimeZone::CTimeZone(char const *)+1c0:
m5t::CTimeZone::SetTimeZone(char const *) ()
64054c m5t::CTimeZone::SetTimeZone(char const *)+1f0:
m5t::CString::operator=(char const *) ()
64bea4 m5t::CString::operator=(char const *)+b8 :
m5t::CString::ReserveCapacity(unsigned short) ()
shell restarted.
Could anyone suggest and solution?

Dec 22 '06 #1
1 5106
On 22 Dec 2006 04:06:36 -0800, ya********@rediffmail.com wrote in
comp.lang.c++:
When I compile to code using g++arm of VxWorks 5.5 and put it on my
board i get the follwing undefined symbols:-
Cpool and Csingleton are template classes. CPool has the static member
variables:-ms_uCapacity ,ms_uAllocatedCount ,
ms_uLockCapacity ,ms_pmutex

-ld < yamit/apps1.out
Undefined symbol: _Q23m5tt5CPool1ZQ23m5t10CMarshaler$ms_uCapacity
(binding 1 type 0)
Undefined symbol: _Q23m5tt5CPool1ZQ23m5t10CMarshaler$ms_uAllocatedCo unt
(binding 1 type 0)
Undefined symbol: resolvQuery (binding 1 type 0)
Undefined symbol: _Q23m5tt5CPool1ZQ23m5t10CMarshaler$ms_pBlockAlloca tor
(binding 1 type 0)
Undefined symbol:
_Q23m5tt10CSingleton1ZQ23m5t12CTimeUpdater$ms_pIns tance (binding 1 type
0)
Undefined symbol: _Q23m5tt10CSingleton1ZQ23m5t7CCrypto$ms_pInstance
(binding 1 type 0)
Undefined symbol: resolvDNExpand (binding 1 type 0)
Undefined symbol: _Q23m5tt5CPool1ZQ23m5t10CMarshaler$ms_uLockCapacit y
(binding 1 type 0)
Undefined symbol: _Q23m5tt5CPool1ZQ23m5t10CMarshaler$ms_pmutex (binding
1 type 0)
Undefined symbol:
_Q23m5tt10CSingleton1ZQ23m5t17CDefaultAllocator$ms _pInstance (binding 1
type 0)
ld error: Module contains undefined symbol(s) and may be unusable.
value = 0 = 0x0

-voipInit
YM1A call to M5T code/n
Data abort
Exception address: 0x0064c998
Current Processor Status Register: 0x80000013

trcStack aborted: error in frame
184430 yystart +74c: voipInit ()
63b55c voipInit +14 :
m5t::CFrameworkInitializer::Initialize(void) ()
63af50 m5t::CFrameworkInitializer::Initialize(void)+220:
m5t::InitializeCTime(void) ()
63d7a4 m5t::InitializeCTime(void)+c :
m5t::CTime::InitializeCTime(void) ()
63d698 m5t::CTime::InitializeCTime(void)+78 :
m5t::CTimeZone::CTimeZone(char const *) ()
63fb0c m5t::CTimeZone::CTimeZone(char const *)+1c0:
m5t::CTimeZone::SetTimeZone(char const *) ()
64054c m5t::CTimeZone::SetTimeZone(char const *)+1f0:
m5t::CString::operator=(char const *) ()
64bea4 m5t::CString::operator=(char const *)+b8 :
m5t::CString::ReserveCapacity(unsigned short) ()
shell restarted.
Could anyone suggest and solution?
No solution until after you follow the suggestion.

POST THE CODE.

There is something wrong with your source code, but my crystal ball is
off for the holiday weekend...

--
Jack Klein
Home: http://JK-Technology.Com
FAQs for
comp.lang.c http://c-faq.com/
comp.lang.c++ http://www.parashift.com/c++-faq-lite/
alt.comp.lang.learn.c-c++
http://www.contrib.andrew.cmu.edu/~a...FAQ-acllc.html
Dec 22 '06 #2

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

8 posts views Thread by Scott J. McCaughrin | last post: by
2 posts views Thread by kamit | last post: by
8 posts views Thread by pavan734 | last post: by
5 posts views Thread by .rhavin grobert | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.