Hi Community,
I didn't write all the codes that are automatically generates by
makeAppBase.pl application. By the way, I'll report below all the
infos:
1) mdrive_1IOC/src/Makefile
# SPDX-FileCopyrightText: 2003 Argonne National Laboratory
#
# SPDX-License-Identifier: EPICS
TOP=../..
include $(TOP)/configure/CONFIG
#----------------------------------------
# ADD MACRO DEFINITIONS AFTER THIS LINE
#=============================
#=============================
# Build the IOC application
PROD_IOC = mdrive_1IOC
# mdrive_1IOC.dbd will be created and installed
DBD += mdrive_1IOC.dbd
# mdrive_1IOC.dbd will be made up from these files:
mdrive_1IOC_DBD += base.dbd
# Include dbd files from all support applications:
#mdrive_1IOC_DBD += xxx.dbd
mdrive_1IOC_DBD += asyn.dbd
mdrive_1IOC_DBD += drvAsynIPPort.dbd
mdrive_1IOC_DBD += stream-base.dbd
# Add all the support libraries needed by this IOC
#mdrive_1IOC_LIBS += xxx
mdrive_1IOC_LIBS += stream
mdrive_1IOC_LIBS += asyn
# mdrive_1IOC_registerRecordDeviceDriver.cpp derives from
mdrive_1IOC.dbd
mdrive_1IOC_SRCS += mdrive_1IOC_registerRecordDeviceDriver.cpp
# Build the main IOC entry point on workstation OSs.
mdrive_1IOC_SRCS_DEFAULT += mdrive_1IOCMain.cpp
mdrive_1IOC_SRCS_vxWorks += -nil-
# Add support from base/src/vxWorks if needed
#mdrive_1IOC_OBJS_vxWorks += $(EPICS_BASE_BIN)/vxComLibrary
# Finally link to the EPICS Base libraries
mdrive_1IOC_LIBS += $(EPICS_BASE_IOC_LIBS)
#===========================
2) in st.cmd file
#!../../bin/linux-x86_64/mdrive_1IOC
#- SPDX-FileCopyrightText: 2003 Argonne National Laboratory
#-
#- SPDX-License-Identifier: EPICS
#- You may have to change mdrive_1IOC to something else
#- everywhere it appears in this file
< envPaths
cd "${TOP}"
epicsEnvSet ("STREAM_PROTOCOL_PATH", "${TOP}/db")
epicsEnvSet ("PORT_mdrive_x", "ip_x")
#X Axis
drvAsynIPPortConfigure($(PORT_mdrive_x), "100.100.0.23:503")
asynOctetSetInputEos($(PORT_mdrive_x),0,"\n\r")
asynOctetSetOutputEos($(PORT_mdrive_x),0,"\n\r")
asynSetTraceMask($(PORT_mdrive_x),-1,0x9);
asynSetTraceIOMask($(PORT_mdrive_x),-1,0x2)
## Register all support components
dbLoadDatabase "dbd/mdrive_1IOC.dbd"
mdrive_1IOC_registerRecordDeviceDriver pdbbase
## Load record instances
#dbLoadRecords("db/mdrive_1IOC.db","user=xlabsrv2")
dbLoadTemplate("db/mdrive_1IOC.val")
cd "${TOP}/iocBoot/${IOC}"
iocInit
## Start any sequence programs
#seq sncxxx,"user=xlabsrv2"
3) "make all clean"
[xlabsrv2@xlabsrv2 mdrive_1IOC]$ make clean all
make -C ./configure clean
make[1]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/configure»
rm -rf O.linux-x86_64 O.Common
make[1]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/configure»
make -C ./mdrive_1IOCApp clean
make[1]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp»
make -C ./src clean
make[2]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp/src»
rm -rf O.linux-x86_64 O.Common
make[2]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp/src»
make -C ./Db clean
make[2]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp/Db»
rm -rf O.linux-x86_64 O.Common
make[2]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp/Db»
make[1]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp»
make -C ./iocBoot clean
make[1]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/iocBoot»
make -C ./iocmdrive_1IOC clean
make[2]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/iocBoot/iocmdrive_1IOC»
rm -f cdCommands envPaths dllPath.bat relPaths.sh
make[2]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/iocBoot/iocmdrive_1IOC»
make[1]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/iocBoot»
make -C ./configure install
make[1]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/configure»
perl -CSD /home/xlabsrv2/epics/bin/linux-x86_64/makeMakefile.pl
O.linux-x86_64 ../..
mkdir -p O.Common
make -C O.linux-x86_64 -f ../Makefile TOP=../.. \
T_A=linux-x86_64 install
make[2]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/configure/O.linux-x86_64»
perl -CSD /home/xlabsrv2/epics/bin/linux-x86_64/convertRelease.pl
checkRelease
make[2]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/configure/O.linux-x86_64»
make[1]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/configure»
make -C ./mdrive_1IOCApp install
make[1]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp»
make -C ./src install
make[2]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp/src»
perl -CSD /home/xlabsrv2/epics/bin/linux-x86_64/makeMakefile.pl
O.linux-x86_64 ../../..
mkdir -p O.Common
make -C O.linux-x86_64 -f ../Makefile TOP=../../.. \
T_A=linux-x86_64 install
make[3]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp/src/O.linux-x86_64»
/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_
-DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64
-I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc
-I../../../include/os/Linux -I../../../include
-I/home/xlabsrv2/epics/synApps_6_3/support/asyn-R4-44-2/include
-I/home/xlabsrv2/epics/synApps_6_3/support/StreamDevice-2-8-24/include
-I/home/xlabsrv2/epics/include/compiler/gcc
-I/home/xlabsrv2/epics/include/os/Linux
-I/home/xlabsrv2/epics/include -MM -MF mdrive_1IOCMain.d
../mdrive_1IOCMain.cpp
Creating dbd file mdrive_1IOC.dbd
perl -CSD /home/xlabsrv2/epics/bin/linux-x86_64/dbdExpand.pl -I.
-I.. -I../O.Common -I../../../dbd
-I/home/xlabsrv2/epics/synApps_6_3/support/asyn-R4-44-2/dbd
-I/home/xlabsrv2/epics/synApps_6_3/support/StreamDevice-2-8-24/dbd
-I/home/xlabsrv2/epics/dbd -o mdrive_1IOC.dbd base.dbd asyn.dbd
drvAsynIPPort.dbd stream-base.dbd
perl -CSD
/home/xlabsrv2/epics/bin/linux-x86_64/registerRecordDeviceDriver.pl
-I. -I.. -I../O.Common -I../../../dbd
-I/home/xlabsrv2/epics/synApps_6_3/support/asyn-R4-44-2/dbd
-I/home/xlabsrv2/epics/synApps_6_3/support/StreamDevice-2-8-24/dbd
-I/home/xlabsrv2/epics/dbd -o
mdrive_1IOC_registerRecordDeviceDriver.cpp \
../O.Common/mdrive_1IOC.dbd
mdrive_1IOC_registerRecordDeviceDriver
/home/xlabsrv2/epics/IOCs/mdrive_1IOC
/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_
-DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64
-I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc
-I../../../include/os/Linux -I../../../include
-I/home/xlabsrv2/epics/synApps_6_3/support/asyn-R4-44-2/include
-I/home/xlabsrv2/epics/synApps_6_3/support/StreamDevice-2-8-24/include
-I/home/xlabsrv2/epics/include/compiler/gcc
-I/home/xlabsrv2/epics/include/os/Linux
-I/home/xlabsrv2/epics/include -MM -MF
mdrive_1IOC_registerRecordDeviceDriver.d
mdrive_1IOC_registerRecordDeviceDriver.cpp
Installing created dbd file ../../../dbd/mdrive_1IOC.dbd
/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_
-DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64
-I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc
-I../../../include/os/Linux -I../../../include
-I/home/xlabsrv2/epics/synApps_6_3/support/asyn-R4-44-2/include
-I/home/xlabsrv2/epics/synApps_6_3/support/StreamDevice-2-8-24/include
-I/home/xlabsrv2/epics/include/compiler/gcc
-I/home/xlabsrv2/epics/include/os/Linux
-I/home/xlabsrv2/epics/include -c
mdrive_1IOC_registerRecordDeviceDriver.cpp
/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_
-DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64
-I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc
-I../../../include/os/Linux -I../../../include
-I/home/xlabsrv2/epics/synApps_6_3/support/asyn-R4-44-2/include
-I/home/xlabsrv2/epics/synApps_6_3/support/StreamDevice-2-8-24/include
-I/home/xlabsrv2/epics/include/compiler/gcc
-I/home/xlabsrv2/epics/include/os/Linux
-I/home/xlabsrv2/epics/include -c ../mdrive_1IOCMain.cpp
/usr/bin/g++ -o mdrive_1IOC
-L/home/xlabsrv2/epics/IOCs/mdrive_1IOC/lib/linux-x86_64
-L/home/xlabsrv2/epics/lib/linux-x86_64
-L/home/xlabsrv2/epics/synApps_6_3/support/StreamDevice-2-8-24/lib/linux-x86_64
-L/home/xlabsrv2/epics/synApps_6_3/support/asyn-R4-44-2/lib/linux-x86_64
-Wl,-rpath,/home/xlabsrv2/epics/IOCs/mdrive_1IOC/lib/linux-x86_64
-Wl,-rpath,/home/xlabsrv2/epics/lib/linux-x86_64
-Wl,-rpath,/home/xlabsrv2/epics/synApps_6_3/support/StreamDevice-2-8-24/lib/linux-x86_64
-Wl,-rpath,/home/xlabsrv2/epics/synApps_6_3/support/asyn-R4-44-2/lib/linux-x86_64
-rdynamic -m64
mdrive_1IOC_registerRecordDeviceDriver.o mdrive_1IOCMain.o
-lstream -lasyn -ldbRecStd -ldbCore -lca -lCom
Installing created executable
../../../bin/linux-x86_64/mdrive_1IOC
make[3]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp/src/O.linux-x86_64»
make[2]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp/src»
make -C ./Db install
make[2]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp/Db»
perl -CSD /home/xlabsrv2/epics/bin/linux-x86_64/makeMakefile.pl
O.linux-x86_64 ../../..
mkdir -p O.Common
make -C O.linux-x86_64 -f ../Makefile TOP=../../.. \
T_A=linux-x86_64 install
make[3]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp/Db/O.linux-x86_64»
make[3]: Nessuna operazione da eseguire per «install».
make[3]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp/Db/O.linux-x86_64»
make[2]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp/Db»
make[1]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/mdrive_1IOCApp»
make -C ./iocBoot install
make[1]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/iocBoot»
make -C ./iocmdrive_1IOC install
make[2]: ingresso nella directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/iocBoot/iocmdrive_1IOC»
perl -CSD /home/xlabsrv2/epics/bin/linux-x86_64/convertRelease.pl
-t /home/xlabsrv2/epics/IOCs/mdrive_1IOC envPaths
make[2]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/iocBoot/iocmdrive_1IOC»
make[1]: uscita dalla directory
«/home/xlabsrv2/epics/IOCs/mdrive_1IOC/iocBoot»
4) "./st.cmd"
[xlabsrv2@xlabsrv2 iocmdrive_1IOC]$ ./st.cmd
#!../../bin/linux-x86_64/mdrive_1IOC
< envPaths
epicsEnvSet("IOC","iocmdrive_1IOC")
epicsEnvSet("TOP","/home/xlabsrv2/epics/IOCs/mdrive_1IOC")
epicsEnvSet("SUPPORT","/home/xlabsrv2/epics/synApps_6_3/support")
epicsEnvSet("ASYN","/home/xlabsrv2/epics/synApps_6_3/support/asyn-R4-44-2")
epicsEnvSet("STREAM","/home/xlabsrv2/epics/synApps_6_3/support/StreamDevice-2-8-24")
epicsEnvSet("EPICS_BASE","/home/xlabsrv2/epics")
cd "/home/xlabsrv2/epics/IOCs/mdrive_1IOC"
epicsEnvSet ("STREAM_PROTOCOL_PATH",
"/home/xlabsrv2/epics/IOCs/mdrive_1IOC/db")
epicsEnvSet ("PORT_mdrive_x", "ip_x")
#X Axis
drvAsynIPPortConfigure(ip_x, "100.100.0.23:503")
ERROR st.cmd line 36: Command drvAsynIPPortConfigure not found.
asynOctetSetInputEos(ip_x,0,"\n\r")
ERROR st.cmd line 37: Command asynOctetSetInputEos not found.
asynOctetSetOutputEos(ip_x,0,"\n\r")
ERROR st.cmd line 38: Command asynOctetSetOutputEos not found.
asynSetTraceMask(ip_x,-1,0x9);
ERROR st.cmd line 40: Command asynSetTraceMask not found.
asynSetTraceIOMask(ip_x,-1,0x2)
ERROR st.cmd line 41: Command asynSetTraceIOMask not found.
## Register all support components
dbLoadDatabase "dbd/mdrive_1IOC.dbd"
mdrive_1IOC_registerRecordDeviceDriver pdbbase
## Load record instances
#dbLoadRecords("db/mdrive_1IOC.db","user=xlabsrv2")
dbLoadTemplate("db/mdrive_1IOC.val")
cd "/home/xlabsrv2/epics/IOCs/mdrive_1IOC/iocBoot/iocmdrive_1IOC"
iocInit
Starting iocInit
############################################################################
## EPICS R7.0.8.2-DEV
## Rev. R7.0.8.1-142-g144f9756eac4e800f18d
## Rev. Date Git: 2025-02-05 10:16:16 -0600
############################################################################
2025/09/19 09:56:08.550149 _main_ Cannot find a bus named 'ip_x'
for 'mdrive_x:model'
2025/09/19 09:56:08.550225 _main_ mdrive_x:model: Can't attach to
bus ip_x 0
2025/09/19 09:56:08.550243 _main_ mdrive_x:model: Record
initialization failed
iocRun: All initialization complete
## Start any sequence programs
#seq sncxxx,"user=xlabsrv2"
5) "epics> help"
# ClockTime_Report asDumpHash
asInit
asSetFilename asSetSubstitutions ascar
asdbdump
asphag aspmem asprules aspuag
astac
asynAutoConnect asynEnable asynInterposeDelay
asynInterposeEcho asynInterposeEosConfig
asynInterposeFlushConfig asynOctetConnect
asynOctetDisconnect asynOctetFlush
asynOctetGetInputEos
asynOctetGetOutputEos asynOctetRead
asynOctetSetInputEos
asynOctetSetOutputEos asynOctetWrite asynOctetWriteRead
asynRegisterTimeStampSource asynReport
asynSetAutoConnectTimeout
asynSetMinTimerPeriod asynSetOption
asynSetQueueLockPortTimeout
asynSetTraceFile asynSetTraceIOMask
asynSetTraceIOTruncateSize asynSetTraceInfoMask
asynSetTraceMask asynShowOption
asynUnregisterTimeStampSource
asynWaitConnect callbackParallelThreads callbackQueueShow
callbackSetQueueSize casr cd
coreRelease
date dbCreateAlias dbDumpBreaktable
dbDumpDevice
dbDumpDriver dbDumpField dbDumpFunction dbDumpLink
dbDumpMenu
dbDumpPath dbDumpRecord dbDumpRecordType
dbDumpRegistrar dbDumpVariable dbLoadDatabase dbLoadRecords
dbLoadTemplate
dbLockShowLocked dbNotifyDump dbPutAttribute
dbPvdDump
dbPvdTableSize dbReportDeviceConfig dbStateClear
dbStateCreate
dbStateSet dbStateShow dbStateShowAll dba
dbap
dbb dbc dbcar dbd
dbel
dbgf dbgrep dbhcr dbior
dbjlr
dbl dbla dbli dblsr
dbnr
dbp dbpf dbpr dbs
dbsr
dbstat dbtgf dbtpf dbtpn
dbtr
drvAsynIPPortConfigure drvAsynIPServerPortConfigure
echo
eltc epicsEnvSet epicsEnvShow epicsEnvUnset
epicsMutexShowAll epicsParamShow epicsPrtEnvParams
epicsThreadResume epicsThreadShow epicsThreadShowAll
epicsThreadSleep errlog errlogInit
errlogInit2
exit generalTimeReport gft
help
installLastResortEventProvider iocBuild iocInit
iocLogInit
iocLogPrefix iocLogShow iocPause iocRun
iocshCmd
iocshLoad iocshRun
mdrive_1IOC_registerRecordDeviceDriver
on pft postEvent pwd
registerAllRecordDeviceDrivers registryDeviceSupportFind
registryDriverSupportFind registryDump
registryFunctionFind
registryRecordTypeFind scanOnceQueueShow
scanOnceSetQueueSize scanpel scanpiol
scanppl
setIocLogDisable streamReinit streamReload
streamReportRecord streamSetLogfile
taskwdShow
tpn var
I
Il 19/09/2025 03:35, Ralph Lange via
Tech-talk ha scritto:
I think you have the order of things in the startup file
wrong.
The block
## Register all support components
dbLoadDatabase
"dbd/mdrive_1IOC.dbd"
mdrive_1IOC_registerRecordDeviceDriver
pdbbase
loads the dbd file and registers all Record, Device and
Driver Support modules with EPICS. This includes the
registration of iocShell commands.
Before this block is run, the iocShell does not know the
asyn-related commands.
Cheers,
~Ralph
--
************************************
Dr. Dariush Hampai, PhD
INFN - LNF
X-Lab Frascati
Via E. Fermi, 54 (ex 40)
I-00044 Frascati (RM)
Italy
Mail Address:
XLab-Frascati
LNF-INFN
Casella Postale 13
Frascati (RM)
Italy
Room: +39.06.9403.5248
Lab.: +39.06.9403.2286
Mob.: +39.06.9403.8025
Fax.: +39.06.9403.2597
************************************
- Replies:
- Re: Problem with drvAsynIPPortConfigure Mark Rivers via Tech-talk
- References:
- Problem with drvAsynIPPortConfigure Dariush Hampai via Tech-talk
- Re: Problem with drvAsynIPPortConfigure Ralph Lange via Tech-talk
- Navigate by Date:
- Prev:
Re: Help with bumpless IOC reboot, record linking and initialization concepts Marco Filho via Tech-talk
- Next:
Re: Problem with drvAsynIPPortConfigure 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
2020
2021
2022
2023
2024
<2025>
- Navigate by Thread:
- Prev:
Re: Problem with drvAsynIPPortConfigure Ralph Lange via Tech-talk
- Next:
Re: Problem with drvAsynIPPortConfigure 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
2020
2021
2022
2023
2024
<2025>
|