Experimental Physics and
| |||||||||||||||
|
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
| ||||||||||||||
ANJ, 18 Jun 2020 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing · |