Hi Andrew,
Thank you so much! It is working.
Now I need to re-build my CaChannel stuff. That is for next week.
Best regards,
Dehong
----- Original Message -----
From: Andrew Johnson <[email protected]>
Date: Friday, November 14, 2008 2:13 pm
Subject: Re: WireSet missing with 3.14.10
To: Dehong Zhang <[email protected]>
Cc: [email protected]
> Hi Dehong,
>
> On Friday 14 November 2008 12:28:23 Dehong Zhang wrote:
> >
> > Our board actually has MPC7455 processor, with AltiVec coprocessor.
> > I followed your suggestions and tried vxWorks-ppc604_altivec. Still
> > got the same error messages:
>
> Ok, now your installation is using all the standard build rules so I
> believe
> that the problem is mine and not yours. Thanks for posting the IOC
> console
> log, that also helps a lot.
>
> > # Epics Startup command file
> > # cd "/home/vxworks_boot/fe/hinst1/epics"
> >
> > # putenv("EPICS_TS_NTP_INET='127.0.0.1'")
> > putenv("EPICS_CA_MAX_ARRAY_BYTES=1048576")
> > value = 0 = 0x0
> >
> > ld < hinst1.munch
> > Warning: module 0x329d640 holds reference to undefined symbol
> > _Z7WireSetIfEvRKT_Ph.
> > Warning: module 0x329d640 holds reference to undefined symbol
> _Z7WireSetIiEvRKT_Ph.
> > Warning: module 0x329d640 holds reference to undefined symbol
> _Z7WireSetIsEvRKT_Ph.
>
> I tried various versions of c++filt for gcc 3.x, and finally found
> that the
> version for my linux system (which actually has gcc 4.1.2) can
> translate
> those symbols, as long as I strip off the trailing '.', giving this:
>
> Warning: module 0x329d640 holds reference to undefined symbol
> void WireSet<float>(float const&, unsigned char*)
> Warning: module 0x329d640 holds reference to undefined symbol
> void WireSet<int>(int const&, unsigned char*)
> Warning: module 0x329d640 holds reference to undefined symbol
> void WireSet<short>(short const&, unsigned char*)
>
> Those functions should be being in-lined by the compiler wherever they
> are
> used (they are on my systems), so I don't understand why you're
> getting this
> error. It may just be an issue with the vxWorks 6.1 compiler though —
> if
> there are any other vxWorks 6.x users reading, do you see this problem?
>
> However it is easy to explicitly instantiate the functions manually.
> Apply
> the attached patch file to your base/src/ca/templateInstances.cpp file
> and
> run 'make' first at the top of base and then in your IOC application top.
>
> I think that should solve the problem; please let me know if it does
> so I can
> commit that change for the next release of Base.
>
> - Andrew
> --
> Talk is cheap. Show me the code. -- Linus Torvalds
- References:
- WireSet missing with 3.14.10 Dehong Zhang
- Re: WireSet missing with 3.14.10 Andrew Johnson
- Re: WireSet missing with 3.14.10 Dehong Zhang
- Re: WireSet missing with 3.14.10 Andrew Johnson
- Navigate by Date:
- Prev:
Re: WireSet missing with 3.14.10 Andrew Johnson
- Next:
SNL compiler bug (and a fix) Benjamin Franksen
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
<2008>
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: WireSet missing with 3.14.10 Andrew Johnson
- Next:
USE of CA lib: problem using ca_array_put_callback with strings haquin
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
<2008>
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|