Experimental Physics and Industrial Control System
|
Dear Ralph,
Thanks for the explanation.
I had this doubt, because generally when we use CSS tool in RHEL projects, we get IOC names like "41CPSD-PCF-0001". That's why I though that there is something problematic here if it's not accepting numeric. But as you indicated CSS tool must have been creating IOC differently or Changing Names manually which doesn't affect file structure or C indentifier.
I will take care now to avoid numerics in IOC naming while using "makeBaseApp".
From: "tech-talk" <tech-talk at aps.anl.gov> To: "tech-talk" <tech-talk at aps.anl.gov> Sent: Tuesday, June 23, 2020 6:13:34 PM Subject: Re: Does IOC name have any restrictions ?
Hi Hitesh, The standard application templates in EPICS Base use the IOC name (from the makeBaseApp command line) as the first part of a function name for some generated C code. That's why - if you use the application templates from Base - the IOC name must work as a C identifier. If you go in and manually change those names to something else that is unique on the IOC, you're fine. (In the standard structure, the IOC name is also used as part of a directory name - that would be the next place where using special characters might backfire.) Cheers, ~Ralph Hello,
I am getting a make error in ioc generation using makeBaseApp, if I use any numeric in name "test".
I created IOC using this,
../bin/windows-x64-mingw/makeBaseApp.pl -t ioc 3test
../bin/windows-x64-mingw/makeBaseApp.pl -i -t ioc 3test
But, make fails with following error.
---------------- 3test_registerRecordDeviceDriver.cpp:248:5: error: expected unqualified-id before numeric constant 248 | int 3test_registerRecordDeviceDriver(DBBASE *pbase) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3test_registerRecordDeviceDriver.cpp: In function 'void rrddCallFunc(const iocshArgBuf*)': 3test_registerRecordDeviceDriver.cpp:291:19: error: unable to find numeric literal operator 'operator""test_registerRecordDeviceDriver' 291 | iocshSetError(3test_registerRecordDeviceDriver(*iocshPpdbbase)); -------------------------
It works fine if i use non-numeric, say using 'rtest' instead of '3test' is working fine. I am working on Windows 10 and MSYS environment.Do we have any restriction in naming convention for IOC? or this is something else ? Regards, Hitesh
- Replies:
- Re: Does IOC name have any restrictions ? Ralph Lange via Tech-talk
- References:
- Does IOC name have any restrictions ? Hitesh Dhola via Tech-talk
- Re: Does IOC name have any restrictions ? Ralph Lange via Tech-talk
- Navigate by Date:
- Prev:
Re: How to run IOC in docker containers properly xiao zhang via Tech-talk
- Next:
Re: How to run IOC in docker containers properly Florian Feldbauer via Tech-talk
- 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: Does IOC name have any restrictions ? Ralph Lange via Tech-talk
- Next:
Re: Does IOC name have any restrictions ? Ralph Lange via Tech-talk
- 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
|
ANJ, 24 Jun 2020 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
·
Search
·
EPICS V4
·
IRMIS
·
Talk
·
Bugs
·
Documents
·
Links
·
Licensing
·
|