EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Problem when loading epics3.14.12.1 application to vxWorks5.5/MPC8572
From: Dirk Zimoch <[email protected]>
To: [email protected]
Date: Mon, 25 Feb 2013 15:46:19 +0100
Hello 王林,

You need full C++ support in your vxWorks kernel. This is not the default!

I have:
#define INCLUDE_CTORS_DTORS         /* include constructors/destructors */
#define INCLUDE_CPLUS               /* include C++ support */
#define INCLUDE_CPLUS_IOSTREAMS     /* include basic iostreams classes */
#define INCLUDE_CPLUS_STL           /* include Standard Template Library
core */
#define INCLUDE_CPLUS_STRING        /* include string class */
#define INCLUDE_CPLUS_STRING_IO     /* include i/o for string class */
#define INCLUDE_CPLUS_COMPLEX       /* include complex number class */
#define INCLUDE_CPLUS_COMPLEX_IO    /* include i/o for complex number
class */
#define INCLUDE_CPLUS_IOSTREAMS_FULL/* include all of iostreams */

You probably don't need *COMPLEX* for EPICS but better have the rest.

Dirk

On 23.02.2013 11:22, 王林 wrote:
> Hello,
> When I load an EPICS example application to the vxWorks5.5.1 running on 
> a MPC8572 CPU board, "Undefined symbol" is reported as follows,
> ld <bin/vxWorks-mpc8572/example.munch
> Undefined symbol: 
> clone__Q2t12basic_string3ZcZt18string_char_traits1ZcZt24__default_alloc_t)Undefined 
> symbol: __tf9exception (binding 1 type 0)
> Undefined symbol: _vt$9bad_alloc (binding 1 type 0)
> Undefined symbol: __cp_push_exception (binding 1 type 0)
> Undefined symbol: __tf9bad_alloc (binding 1 type 0)
> Undefined symbol: unexpected__Fv (binding 1 type 0)
> Undefined symbol: __uncatch_exception (binding 1 type 0)
> Undefined symbol: __tfv (binding 1 type 0)
> Undefined symbol: _t24__default_alloc_template2b1i0$_S_free_list 
> (binding 1 type 0)
> Undefined symbol: __rtti_user (binding 1 type 0)
> Undefined symbol: __rtti_si (binding 1 type 0)
> Undefined symbol: _$_9bad_alloc (binding 1 type 0)
> Undefined symbol: __check_eh_spec (binding 1 type 0)
> Undefined symbol: __get_eh_context (binding 1 type 0)
> Undefined symbol: __sjthrow (binding 1 type 0)
> Undefined symbol: 
> replace__t12basic_string3ZcZt18string_char_traits1ZcZt24__default_alloc_t)Undefined 
> symbol: terminate__Fv (binding 1 type 0)
> Undefined symbol: 
> _t12basic_string3ZcZt18string_char_traits1ZcZt24__default_alloc_template2)Undefined 
> symbol: _vt$13runtime_error (binding 1 type 0)
> Undefined symbol: __start_cp_handler (binding 1 type 0)
> Undefined symbol: 
> _t24__default_alloc_template2b1i0$_S_node_allocator_lock (binding 1 type 
> )Undefined symbol: __cp_pop_exception (binding 1 type 0)
> Undefined symbol: __ti9exception (binding 1 type 0)
> Undefined symbol: _vt$9exception (binding 1 type 0)
> Undefined symbol: __builtin_vec_new (binding 1 type 0)
> Undefined symbol: __eh_rtime_match (binding 1 type 0)
> Undefined symbol: __builtin_vec_delete (binding 1 type 0)
> Undefined symbol: __rtti_class (binding 1 type 0)
> Undefined symbol: __builtin_delete (binding 1 type 0)
> Undefined symbol: __terminate (binding 1 type 0)
> Undefined symbol: __builtin_new (binding 1 type 0)
> Undefined symbol: _vt$11logic_error (binding 1 type 0)
> Undefined symbol: __eh_alloc (binding 1 type 0)
> ld error: Module contains undefined symbol(s) and may be unusable.
> 
> Checking the vxWorks image, it indeed does not include these symbols. 
> And use "grep -r" to check the gnu library on the vxWorks host, the 
> library files libcplus.a and libgnucplus.a under 
> Tornado2.2/target/lib/ppc/PPC403/gnu, PPC405/gnu, PPC440/gnu, 
> PPC603/gnu, PPC604/gnu and PPC860/gnu do provide these symbols, but the 
> libcplus.a and libgnucplus.a under Tornado2.2/target/lib/ppc/PPC85XX/gnu 
> directory do not provide, which seems to cause the above error.
> Do you have encountered such a problem before?
> Thanks,
> Lin Wang


Replies:
Re: Problem when loading epics3.14.12.1 application tovxWorks5.5/MPC8572 王林
References:
Problem when loading epics3.14.12.1 application to vxWorks5.5/MPC8572 王林

Navigate by Date:
Prev: Problem when loading epics3.14.12.1 application to vxWorks5.5/MPC8572 王林
Next: Re: Problem when cross-compiling epics base for vxWorks5.5 on win32-x86 Dirk Zimoch
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Problem when loading epics3.14.12.1 application to vxWorks5.5/MPC8572 王林
Next: Re: Problem when loading epics3.14.12.1 application tovxWorks5.5/MPC8572 王林
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 20 Apr 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·