Experimental Physics and Industrial Control System
Mark, yes, you are right. It is the file devHP3458A.dbd which includes asyn.dbd. That file is from another hp3458a driver recommended by Andrew J. yesterday.
Rebuilding the test IOC is done. I just need to wait for the coming maintenance days to try it out.
Thank you!
Yong
On 7/9/20, 6:52 PM, "Mark Rivers" <rivers at cars.uchicago.edu> wrote:
Hi Yong,
More recent versions of base have become more strict about including the same dbd file more than once. That is what is causing your error.
This is the command with the error:
perl -CSD /home/yhu/src/base-3.15.6/bin/linux-x86_64/dbdExpand.pl -I. -I.. -I../O.Common -I../../../dbd -I/home/yhu/src/asyn/dbd -I/home/yhu/src/StreamDevice/dbd -I/home/yhu/src/base-3.15.6/dbd -o hp3458a.dbd base.dbd xxxSupport.dbd dbSubExample.dbd hp3458aHello.dbd initTrace.dbd devHP3458A.dbd system.dbd asyn.dbd stream.dbd drvVxi11.dbd
asyn.dbd includes asynRecord.dbd, and that is correct.
The problem must be that one of your previous dbd files also includes asyn.dbd or asynRecord.dbd. I would suggest first looking in these files and deleting the lines that include asyn.dbd or asynRecord.dbd.
xxxSupport.dbd
hp3458aHello.dbd
devHP3458A.dbd
system.dbd
Mark
________________________________
From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of Hu, Yong via Tech-talk <tech-talk at aps.anl.gov>
Sent: Thursday, July 9, 2020 5:05 PM
To: tech-talk at aps.anl.gov
Subject: dbdExpand.pl: Duplicate definition of record type 'asyn'
Hi Mark,
As you know, I have trouble with hp3458a which is using very old asyn & StreamDevice. So I am trying to rebuild the hp3458a IOC.
I git clone the latest asyn from GitHub (commit 07f52d99f1977b76191dda505cf9d24b90548743). Firstly I tried to compile it on Debian-7 (wheezy) against base-3.14.12.3 which is pre-installed on our Debian-7 servers. However, it failed: ../../asyn/drvAsynSerial/drvAsynIPPort.c:467:21: error: 'O_REUSEPORT' undeclared (first use in this function).
A little google search indicates this might be related to Debian 7's old kernel or system library. So, I moved to a newer server with Debian-9 (stretch) and built the latest asyn and the latest StreamDevice successfully against base-3.15.6 which is pre-installed on our Debian-9 servers.
When I try to rebuild the hp3458a IOC against the latest asyn & StreamDevice, it fails:
Creating dbd file hp3458a.dbd
perl -CSD /home/yhu/src/base-3.15.6/bin/linux-x86_64/dbdExpand.pl -I. -I.. -I../O.Common -I../../../dbd -I/home/yhu/src/asyn/dbd -I/home/yhu/src/StreamDevice/dbd -I/home/yhu/src/base-3.15.6/dbd -o hp3458a.dbd base.dbd xxxSupport.dbd dbSubExample.dbd hp3458aHello.dbd initTrace.dbd devHP3458A.dbd system.dbd asyn.dbd stream.dbd drvVxi11.dbd
dbdExpand.pl: Duplicate definition of record type 'asyn'
Context: recordtype(asyn) in file '/home/yhu/src/asyn/dbd/asynRecord.dbd' in file '/home/yhu/src/asyn/dbd/asyn.dbd'
while reading 'asyn.dbd' to create 'hp3458a.dbd'
dbdExpand.pl: Exiting due to errors
What is the best way to fix this problem?
Thanks,
Yong
- References:
- dbdExpand.pl: Duplicate definition of record type 'asyn' Hu, Yong via Tech-talk
- Re: dbdExpand.pl: Duplicate definition of record type 'asyn' Mark Rivers via Tech-talk
- Navigate by Date:
- Prev:
Re: Asyn/StreamDevice for HP3458A through Agilent E5810 LAN/GPIB Gateway Mark Rivers via Tech-talk
- Next:
Re: : Integrating picoscopes into the EPICS control system [SEC=UNOFFICIAL] POZAR, Andraz 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: dbdExpand.pl: Duplicate definition of record type 'asyn' Mark Rivers via Tech-talk
- Next:
Re: : Integrating picoscopes into the EPICS control system [SEC=UNOFFICIAL] POZAR, Andraz 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