Experimental Physics and Industrial Control System
Hi,
I tried with R3.12.2 and R3.13.4
My target's an mv2700, vxWorks 5.3.1 in both case
For the loading issue, I got 'similar' results for both release.
For channel access using iocCore, it worked with 3.13.4, but not 3.12.2
the details (taken from 3.12.2)
-> ld < ./libCom
Undefined symbol: iocLogVPrintf (binding 1 type 0)
Undefined symbol: TScurrentTimeStamp (binding 1 type 0)
Undefined symbol: setFPE (binding 1 type 0)
value = 67104488 = 0x3ffeee8 = phead + 0x760
-> ld < ./caLib
Undefined symbol: db_get_field (binding 1 type 0)
Undefined symbol: db_put_field (binding 1 type 0)
Undefined symbol: db_start_events (binding 1 type 0)
Undefined symbol: db_name_to_addr (binding 1 type 0)
Undefined symbol: db_sizeof_event_block (binding 1 type 0)
Undefined symbol: dbNotifyCancel (binding 1 type 0)
Undefined symbol: taskwdRemove (binding 1 type 0)
Undefined symbol: db_init_events (binding 1 type 0)
Undefined symbol: callbackRequest (binding 1 type 0)
Undefined symbol: dbPutNotifyMapType (binding 1 type 0)
Undefined symbol: db_cancel_event (binding 1 type 0)
Undefined symbol: db_close_events (binding 1 type 0)
Undefined symbol: taskwdInsert (binding 1 type 0)
Undefined symbol: db_add_event (binding 1 type 0)
Undefined symbol: setFPE (binding 1 type 0)
Undefined symbol: db_post_extra_labor (binding 1 type 0)
Undefined symbol: db_add_extra_labor_event (binding 1 type 0)
Undefined symbol: dbPutNotify (binding 1 type 0)
Undefined symbol: db_post_single_event (binding 1 type 0)
value = 67089176 = 0x3ffb318
I tried again with:
-> ld < ./libCom
-> ld < ./dbLib
-> ld < ./caLib
here I get undefined ca_ symbols while loading dbLib, so I guess the
later two need be linked before loading.
Unless there's some compilation flags to void db symbols in the CA
library, I'll load the whole iocCore.
The original idea was for me to load the bare minimum code:
libCom + libCa ~ 272 Kb
dbLib ~ 574 Kb
iocCore ~ 1.1 Mb
How much of dbLib do we actually need to do channel access ?
------------------------------------
now, I've loaded iocCore, few putenv, and a simple caget routine:
on 3.12.2:
==========
-> caget "sim5:trigger.DESC",1000
ca_task_initialize
ca_search
data access
Exception current instruction address: 0x00112184
Machine Status Register: 0x0000b130
Data Access Register: 0xf036000f
Condition Register: 0x28400042
Data storage interrupt Register: 0x40000000
1839f8 vxTaskEntry +60 : shell ()
13bdb8 shell +18c: 13bde4 ()
13bfec shell +3c0: execute ()
13c16c execute +d8 : yyparse ()
1a2c5c yyparse +7a8: 1a0bc0 ()
1a0d38 yystart +8f8: caget (3ba6d50, 3e8)
3ba51ec caget +114: ca_search_and_connect (3ba6d50, 3bcc048, 0,
0)
3a54c64 ca_search_and_connect+d8 : db_name_to_addr (3ba6d50, 3bcbfe8)
3a22d60 db_name_to_addr+3c : dbNameToAddr (3ba6d50, 3bcbfe8)
39dfef4 dbNameToAddr +6c : dbPvdFind (3bcbf48, 3ba6d5c, 0)
3a071e4 dbPvdFind +b4 : memset ()
shell restarted.
on 3.13.4
=========
that worked !
Thanks,
Matthieu
--
Matthieu Bec Gemini Observatory
Tel: +1 808 9742557 670 N. A'ohoku Place
Fax: +1 808 9359235 Hilo, Hawaii 96720, USA
- Replies:
- RE: CA clients on vxWorks Jeff Hill
- References:
- RE: CA clients on vxWorks Jeff Hill
- Re: CA clients on vxWorks Marty Kraimer
- Navigate by Date:
- Prev:
Re: Interrupt Epics Driver Allan Honey
- Next:
CA on MacOS X Noboru Yamamoto
- 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: CA clients on vxWorks Marty Kraimer
- Next:
RE: CA clients on vxWorks Jeff Hill
- 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