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  2013  2014  2015  2016  2017  2018  2019  <20202021  2022  2023  2024  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  <20202021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: RE: No PV record found when build ASYN application on Windows
From: shenzb--- via Tech-talk <tech-talk at aps.anl.gov>
To: rivers <rivers at cars.uchicago.edu>
Cc: 'tech-talk' <tech-talk at aps.anl.gov>
Date: Thu, 18 Jun 2020 09:52:46 +0800
Here is the st.cmd.

#!../../bin/windows-x64-mingw/exampleAsyn

#- You may have to change exampleAsyn to something else
#- everywhere it appears in this file

< envPaths

cd "${TOP}"

## Register all support components
dbLoadDatabase "dbd/exampleAsyn.dbd"
exampleAsyn_registerRecordDeviceDriver pdbbase

## Configure devices
drvAsynIPPortConfigure("L0","192.168.188.32:4001",0,0,0)
## Load record instances
dbLoadRecords("${ASYN}/db/asynRecord.db","P=guest:,R=asyn,PORT=L0,ADDR=24,IMAX=100,OMAX=100")

## Load record instances
dbLoadTemplate "db/user.substitutions"
dbLoadRecords "db/exampleAsynVersion.db", "user=ihep"
dbLoadRecords "db/dbSubExample.db", "user=ihep"

#- Set this to see messages from mySub
#var mySubDebug 1

#- Run this to trace the stages of iocInit
#traceIocInit

cd "${TOP}/iocBoot/${IOC}"
iocInit

## Start any sequence programs
#seq sncExample, "user=ihep"

The asyn/exampleAsyn directory was generated by makeBaseApp.pl -t example. I only added the drvAsynIPPortConfigure and dbLoadRecords lines.

Actually I tried to run an ioc created by example template, with no editing. The same thing happened.
$ ../../bin/windows-x64-mingw/example.exe st.cmd
Invalid directory path, ignored
filename="../dbStatic/dbLexRoutines.c" line number=264
No such file or directory dbRead opening file dbd/example.dbd
registerRecordDeviceDriver failed aSub
registerRecordDeviceDriver failed aai
registerRecordDeviceDriver failed aao
registerRecordDeviceDriver failed ai
registerRecordDeviceDriver failed ao
registerRecordDeviceDriver failed bi
registerRecordDeviceDriver failed bo
registerRecordDeviceDriver failed calc
registerRecordDeviceDriver failed calcout
registerRecordDeviceDriver failed compress
registerRecordDeviceDriver failed dfanout
registerRecordDeviceDriver failed event
registerRecordDeviceDriver failed fanout
registerRecordDeviceDriver failed histogram
registerRecordDeviceDriver failed int64in
registerRecordDeviceDriver failed int64out
registerRecordDeviceDriver failed longin
registerRecordDeviceDriver failed longout
registerRecordDeviceDriver failed lsi
registerRecordDeviceDriver failed lso
registerRecordDeviceDriver failed mbbi
registerRecordDeviceDriver failed mbbiDirect
registerRecordDeviceDriver failed mbbo
registerRecordDeviceDriver failed mbboDirect
registerRecordDeviceDriver failed permissive
registerRecordDeviceDriver failed printf
registerRecordDeviceDriver failed sel
registerRecordDeviceDriver failed seq
registerRecordDeviceDriver failed state
registerRecordDeviceDriver failed stringin
registerRecordDeviceDriver failed stringout
registerRecordDeviceDriver failed sub
registerRecordDeviceDriver failed subArray
registerRecordDeviceDriver failed waveform
registerRecordDeviceDriver failed xxx
registryJLinkAdd failed calc
registryJLinkAdd failed const
registryJLinkAdd failed debug
registryJLinkAdd failed state
registryJLinkAdd failed trace
registryJLinkAdd failed pva
dbLoadTemplate: error opening sub file db/user.substitutions
filename="../dbStatic/dbLexRoutines.c" line number=264
No such file or directory dbRead opening file db/exampleVersion.db
filename="../dbStatic/dbLexRoutines.c" line number=264
No such file or directory dbRead opening file db/dbSubExample.db
Invalid directory path, ignored
Starting iocInit
checkDatabase: menuConvert not defined.
iocBuild: Aborting, bad database definition (DBD)!
#!../../bin/windows-x64-mingw/example
< envPaths
epicsEnvSet("IOC","iocexample")
epicsEnvSet("TOP","/home/ihep/example")
epicsEnvSet("EPICS_BASE","/home/ihep/example/../base-7.0.3.1")
cd "/home/ihep/example"
## Register all support components
dbLoadDatabase "dbd/example.dbd"
example_registerRecordDeviceDriver pdbbase
## Load record instances
dbLoadTemplate "db/user.substitutions"
dbLoadRecords "db/exampleVersion.db", "user=ihep"
dbLoadRecords "db/dbSubExample.db", "user=ihep"
#var mySubDebug 1
#traceIocInit
cd "/home/ihep/example/iocBoot/iocexample"
iocInit
## Start any sequence programs
#seq sncExample, "user=ihep"
epics> dbl
No record type

And here is the content of st.cmd.
#!../../bin/windows-x64-mingw/example

#- You may have to change example to something else
#- everywhere it appears in this file

< envPaths

cd "${TOP}"

## Register all support components
dbLoadDatabase "dbd/example.dbd"
example_registerRecordDeviceDriver pdbbase

## Load record instances
dbLoadTemplate "db/user.substitutions"
dbLoadRecords "db/exampleVersion.db", "user=ihep"
dbLoadRecords "db/dbSubExample.db", "user=ihep"

#- Set this to see messages from mySub
#var mySubDebug 1

#- Run this to trace the stages of iocInit
#traceIocInit

cd "${TOP}/iocBoot/${IOC}"
iocInit

## Start any sequence programs
#seq sncExample, "user=ihep"


Zhibang Shen
 
Date: 2020-06-17 23:33
Subject: RE: Re: No PV record found when build ASYN application on Windows

I forgot to include tech-talk in my original reply, but I am including it in this follow-up.

 

How did you create and build the asyn/exampleAsyn directory?

 

This output confuses me.  It is generating an error message without echoing the command from st.cmd?

 

$ ../../bin/windows-x64-mingw/exampleAsyn.exe st.cmd

Invalid directory path, ignored

filename="../dbStatic/dbLexRoutines.c" line number=264

No such file or directory dbRead opening file dbd/exampleAsyn.dbd

 

Can you please post your st.cmd file?  It looks like it is trying to open dbd/exampleAsyn.dbd, but your default directory is ~/support/asyn/exampleAsyn/iocBoot/iocexampleAsyn, so that path is not valid.  The dbd/ directory is 2 levels above your current default directory.

 

What is also strange is that in your output it looks like it is starting the IOC twice.  First at the beginning where you get the above message, and then again later where you get this message:

 

Starting iocInit

checkDatabase: menuConvert not defined.

iocBuild: Aborting, bad database definition (DBD)!

#!../../bin/windows-x64-mingw/exampleAsyn

< envPaths

epicsEnvSet("IOC","iocexampleAsyn")

epicsEnvSet("TOP","/home/ihep/support/asyn/exampleAsyn")

epicsEnvSet("ASYN","/home/ihep/support/asyn/4-39")

epicsEnvSet("EPICS_BASE","/home/ihep/base-7.0.3.1")

 

Perhaps the problem is in your st.cmd file, and will become clear if you post that.

 

Mark

 

 

 

 

From: shenzb at ihep.ac.cn <shenzb at ihep.ac.cn>
Sent: Wednesday, June 17, 2020 10:06 AM
To: Mark Rivers <rivers at cars.uchicago.edu>
Subject: Re: Re: No PV record found when build ASYN application on Windows

 

Hello Mr. Rivers,

 

Thank you for your reply.

 

The command is executed in MingGW, so the file path is using Linux syntax. The output information I sent actually is the complete output.

ihep@ihep-HP MINGW64 ~/support/asyn/exampleAsyn/iocBoot/iocexampleAsyn

$ ../../bin/windows-x64-mingw/exampleAsyn.exe st.cmd

Invalid directory path, ignored

filename="../dbStatic/dbLexRoutines.c" line number=264

No such file or directory dbRead opening file dbd/exampleAsyn.dbd

registerRecordDeviceDriver failed aSub

registerRecordDeviceDriver failed aai

registerRecordDeviceDriver failed aao

registerRecordDeviceDriver failed ai

registerRecordDeviceDriver failed ao

registerRecordDeviceDriver failed asyn

registerRecordDeviceDriver failed bi

registerRecordDeviceDriver failed bo

registerRecordDeviceDriver failed calc

registerRecordDeviceDriver failed calcout

registerRecordDeviceDriver failed compress

registerRecordDeviceDriver failed dfanout

registerRecordDeviceDriver failed event

registerRecordDeviceDriver failed fanout

registerRecordDeviceDriver failed histogram

registerRecordDeviceDriver failed int64in

registerRecordDeviceDriver failed int64out

registerRecordDeviceDriver failed longin

registerRecordDeviceDriver failed longout

registerRecordDeviceDriver failed lsi

registerRecordDeviceDriver failed lso

registerRecordDeviceDriver failed mbbi

registerRecordDeviceDriver failed mbbiDirect

registerRecordDeviceDriver failed mbbo

registerRecordDeviceDriver failed mbboDirect

registerRecordDeviceDriver failed permissive

registerRecordDeviceDriver failed printf

registerRecordDeviceDriver failed sel

registerRecordDeviceDriver failed seq

registerRecordDeviceDriver failed state

registerRecordDeviceDriver failed stringin

registerRecordDeviceDriver failed stringout

registerRecordDeviceDriver failed sub

registerRecordDeviceDriver failed subArray

registerRecordDeviceDriver failed waveform

registerRecordDeviceDriver failed xxx

registryJLinkAdd failed calc

registryJLinkAdd failed const

registryJLinkAdd failed debug

registryJLinkAdd failed state

registryJLinkAdd failed trace

registryJLinkAdd failed pva

filename="../dbStatic/dbLexRoutines.c" line number=264

No such file or directory dbRead opening file /home/ihep/support/asyn/4-39/db/asynRecord.db

dbLoadTemplate: error opening sub file db/user.substitutions

filename="../dbStatic/dbLexRoutines.c" line number=264

No such file or directory dbRead opening file db/exampleAsynVersion.db

filename="../dbStatic/dbLexRoutines.c" line number=264

No such file or directory dbRead opening file db/dbSubExample.db

Invalid directory path, ignored

Starting iocInit

checkDatabase: menuConvert not defined.

iocBuild: Aborting, bad database definition (DBD)!

#!../../bin/windows-x64-mingw/exampleAsyn

< envPaths

epicsEnvSet("IOC","iocexampleAsyn")

epicsEnvSet("TOP","/home/ihep/support/asyn/exampleAsyn")

epicsEnvSet("ASYN","/home/ihep/support/asyn/4-39")

epicsEnvSet("EPICS_BASE","/home/ihep/base-7.0.3.1")

cd "/home/ihep/support/asyn/exampleAsyn"

## Register all support components

dbLoadDatabase "dbd/exampleAsyn.dbd"

exampleAsyn_registerRecordDeviceDriver pdbbase

## Configure devices

drvAsynIPPortConfigure("L0","192.168.188.32:4001",0,0,0)

## Load record instances

dbLoadRecords("/home/ihep/support/asyn/4-39/db/asynRecord.db","P=guest:,R=asyn,PORT=L0,ADDR=24,IMAX=100,OMAX=100")

## Load record instances

dbLoadTemplate "db/user.substitutions"

dbLoadRecords "db/exampleAsynVersion.db", "user=ihep"

dbLoadRecords "db/dbSubExample.db", "user=ihep"

#var mySubDebug 1

#traceIocInit

cd "/home/ihep/support/asyn/exampleAsyn/iocBoot/iocexampleAsyn"

iocInit

## Start any sequence programs

#seq sncExample, "user=ihep"

epics> dbl

No record type

epics>

 

 

Here is the contents of envPaths:

epicsEnvSet("IOC","iocexampleAsyn")

epicsEnvSet("TOP","/home/ihep/support/asyn/exampleAsyn")

epicsEnvSet("ASYN","/home/ihep/support/asyn/4-39")

epicsEnvSet("EPICS_BASE","/home/ihep/base-7.0.3.1")

 

It seems that the command dbLoadRecords causes the exception 

filename="../dbStatic/dbLexRoutines.c" line number=264

No such file or directory dbRead opening file db/dbSubExample.db

and command exampleAsyn_registerRecordDeviceDriver pdbbase causes the exception

registerRecordDeviceDriver failed aSub

registerRecordDeviceDriver failed aai

registerRecordDeviceDriver failed aao

...

 

 

Thank you very much for your help!

 

 

Zhibang Shen

 

From: Mark Rivers

Date: 2020-06-17 19:55

Subject: Re: No PV record found when build ASYN application on Windows

> Should I run the bat file in Windows command prompt or MingGW?

 

 

You should run it in whatever shell you will then run the IOC.

 

 

> $ ../../bin/windows-x64-mingw/exampleAsyn.exe st.cmd

 

> Invalid directory path, ignored

> filename="../dbStatic/dbLexRoutines.c" line number=264

 

Please send the complete output when you run that command.

 

> No such file or directory dbRead opening file /home/ihep/support/asyn/4-39/db/asynRecord.db

 

You are running on Windows, but that file path is using Linux syntax, not Windows.  What shell are you running when you execute the command to run the IOC?  Can you send the envPaths file that was generated in the /iocBoot/iocexampleAsyn directory.

 

Mark

 

 

________________________________

From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of shenzb--- via Tech-talk <tech-talk at aps.anl.gov>

Sent: Wednesday, June 17, 2020 5:22 AM

To: tech-talk

Subject: No PV record found when build ASYN application on Windows

 

Hello everyone,

 

I met two problems when I tried to include asynRecord.db in a windows-x64-mingw EPICS example application. The EPICS base is 7.0.3.1 and asyn is 4-39.

 

I have specified the EPICS_BASE and ASYN paths in the configure/RELEASE file. And I have added exampleAsyn_LIBS += asyn, exampleAsyn_DBD+=asyn.dbd and exampleAsyn_DBD+=drvAsynIPPort.dbd into src/Makefile. No error was printed while 'make clean install'. However,

 

1) st.cmd could not work. It said:

$ ../../bin/windows-x64-mingw/exampleAsyn.exe st.cmd

C:/msys64/home/ihep/support/asyn/exampleAsyn/bin/windows-x64-mingw/exampleAsyn.exe: error while loading shared libraries: exampleAsynSupport.dll: cannot open shared object file: No such file or directory

I followed the solution mentioned here, https://epics.anl.gov/tech-talk/2017/msg00009.php, adding the path of asyn.dll to variable PATH. IOC could finally run. I saw Mr. Rivers gave another better way to do that(https://epics.anl.gov/tech-talk/2017/msg00013.php). Should I run the bat file in Windows command prompt or MingGW?

 

2) Though the IOC was started, there was no pv record.

$ ../../bin/windows-x64-mingw/exampleAsyn.exe st.cmd

Invalid directory path, ignored

filename="../dbStatic/dbLexRoutines.c" line number=264

No such file or directory dbRead opening file dbd/exampleAsyn.dbd

registerRecordDeviceDriver failed aSub

registerRecordDeviceDriver failed aai

registerRecordDeviceDriver failed aao

registerRecordDeviceDriver failed ai

registerRecordDeviceDriver failed ao

registerRecordDeviceDriver failed asyn

registerRecordDeviceDriver failed bi

registerRecordDeviceDriver failed bo

registerRecordDeviceDriver failed calc

registerRecordDeviceDriver failed calcout

registerRecordDeviceDriver failed compress

registerRecordDeviceDriver failed dfanout

registerRecordDeviceDriver failed event

registerRecordDeviceDriver failed fanout

registerRecordDeviceDriver failed histogram

registerRecordDeviceDriver failed int64in

registerRecordDeviceDriver failed int64out

registerRecordDeviceDriver failed longin

registerRecordDeviceDriver failed longout

registerRecordDeviceDriver failed lsi

registerRecordDeviceDriver failed lso

registerRecordDeviceDriver failed mbbi

registerRecordDeviceDriver failed mbbiDirect

registerRecordDeviceDriver failed mbbo

registerRecordDeviceDriver failed mbboDirect

registerRecordDeviceDriver failed permissive

registerRecordDeviceDriver failed printf

registerRecordDeviceDriver failed sel

registerRecordDeviceDriver failed seq

registerRecordDeviceDriver failed state

registerRecordDeviceDriver failed stringin

registerRecordDeviceDriver failed stringout

registerRecordDeviceDriver failed sub

registerRecordDeviceDriver failed subArray

registerRecordDeviceDriver failed waveform

registerRecordDeviceDriver failed xxx

registryJLinkAdd failed calc

registryJLinkAdd failed const

registryJLinkAdd failed debug

registryJLinkAdd failed state

registryJLinkAdd failed trace

registryJLinkAdd failed pva

filename="../dbStatic/dbLexRoutines.c" line number=264

No such file or directory dbRead opening file /home/ihep/support/asyn/4-39/db/asynRecord.db

dbLoadTemplate: error opening sub file db/user.substitutions

filename="../dbStatic/dbLexRoutines.c" line number=264

No such file or directory dbRead opening file db/exampleAsynVersion.db

filename="../dbStatic/dbLexRoutines.c" line number=264

No such file or directory dbRead opening file db/dbSubExample.db

Invalid directory path, ignored

Starting iocInit

checkDatabase: menuConvert not defined.

iocBuild: Aborting, bad database definition (DBD)!

#!../../bin/windows-x64-mingw/exampleAsyn

< envPaths

epicsEnvSet("IOC","iocexampleAsyn")

epicsEnvSet("TOP","/home/ihep/support/asyn/exampleAsyn")

epicsEnvSet("ASYN","/home/ihep/support/asyn/4-39")

epicsEnvSet("EPICS_BASE","/home/ihep/base-7.0.3.1")

cd "/home/ihep/support/asyn/exampleAsyn"

## Register all support components

dbLoadDatabase "dbd/exampleAsyn.dbd"

exampleAsyn_registerRecordDeviceDriver pdbbase

## Configure devices

drvAsynIPPortConfigure("L0","192.168.188.32:4001",0,0,0)

## Load record instances

dbLoadRecords("/home/ihep/support/asyn/4-39/db/asynRecord.db","P=guest:,R=asyn,PORT=L0,ADDR=24,IMAX=100,OMAX=100")

## Load record instances

dbLoadTemplate "db/user.substitutions"

dbLoadRecords "db/exampleAsynVersion.db", "user=ihep"

dbLoadRecords "db/dbSubExample.db", "user=ihep"

#var mySubDebug 1

#traceIocInit

cd "/home/ihep/support/asyn/exampleAsyn/iocBoot/iocexampleAsyn"

iocInit

## Start any sequence programs

#seq sncExample, "user=ihep"

epics> dbl

No record type

epics>

 

I could find exampleAsyn.dbd in dbd/ directory.

 

I built a same example application on Linux(base 3.15.6, asyn 4-33), and it succeeded. Could someone please help me with this? Thanks a lot.

 

________________________________

Best regards,

--

Zhibang Shen


Replies:
Re: RE: No PV record found when build ASYN application on Windows Mark Rivers via Tech-talk
References:
No PV record found when build ASYN application on Windows shenzb--- via Tech-talk
RE: Re: No PV record found when build ASYN application on Windows Mark Rivers via Tech-talk

Navigate by Date:
Prev: Re: How to run IOC in docker containers properly Johnson, Andrew N. via Tech-talk
Next: Re: EPICS across subnets Michael Davidsaver 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  <20202021  2022  2023  2024 
Navigate by Thread:
Prev: RE: Re: No PV record found when build ASYN application on Windows Mark Rivers via Tech-talk
Next: Re: RE: No PV record found when build ASYN application on Windows Mark Rivers 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  <20202021  2022  2023  2024 
ANJ, 18 Jun 2020 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·