Hello
all, good evening.
Im sorry if the doubt is trivial, but i cant find what the problem is.
Since makeBaseApp.pl -t example ioc generates several things that i dont need in my application, im trying to compile a sequencer stateMachine from scratch, with makeBaseApp -t ioc. Following the documentation (https://www-csr.bessy.de/control/SoftDist/sequencer/Installation.html#configure-and-build) i
did:
> makeBaseApp.pl -t ioc SoftKin
> makeBaseApp.pl -i -t ioc SoftKin
Added the path to my sequencer installation as SNCSEQ in configure/RELEASE file. Added an example state machine file called Kinematics.stt in SoftKinApp/src/ folder and in the Makefile:
SoftKin_SRCS += Kinematics.stt
SoftKin_LIBS += seq pv
I compiled it and it went OK. Kinematics.stt was clearly transformed into a cpp code and then compiled.
However, when starting the IOC, at the end of my cmd file i get:
seq Kinematics,"BLP=SOL:,HP=S:,MP=m1"
st.cmd line 22: Command seq not found.
Am i forgetting something in the Makefiles? I tried using the examples of makeBaseApp.pl to understand what is missing but i think im getting lost in application name conversions. I append cmd file, configure/RELEASE and SoftKin/src/Makefil at the end of this
e-mail.
Thanks for any suggestions,
Marco
###############CONFIGURE/RELEASE:
EPICS_BASE = /usr/local/epics-nfs/base/R7.0.7
SNCSEQ = /usr/local/epics-nfs/modules/R7.0.7/synApps_6_2/synApps/support/seq-2-2-9/
# Set RULES here if you want to use build rules from somewhere
# other than EPICS_BASE:
#RULES = $(MODULES)/build-rules
# These lines allow developers to override these RELEASE settings
# without having to modify this file directly.
-include $(TOP)/../RELEASE.local
-include $(TOP)/../RELEASE.$(EPICS_HOST_ARCH).local
-include $(TOP)/configure/RELEASE.local
################SOFTKINAPP/SRC/MAKEFILE:
TOP=../..
include $(TOP)/configure/CONFIG
#----------------------------------------
# ADD MACRO DEFINITIONS AFTER THIS LINE
#=============================
#=============================
# Build the IOC application
PROD_IOC = SoftKin
# SoftKin.dbd will be created and installed
DBD += SoftKin.dbd
# SoftKin.dbd will be made up from these files:
SoftKin_DBD += base.dbd
# Include dbd files from all support applications:
#SoftKin_DBD += xxx.dbd
# Add all the support libraries needed by this IOC
#SoftKin_LIBS += xxx
# SoftKin_registerRecordDeviceDriver.cpp derives from SoftKin.dbd
SoftKin_SRCS += SoftKin_registerRecordDeviceDriver.cpp
####SoftKin_SRCS += Kinematics.stt
# Build the main IOC entry point on workstation OSs.
SoftKin_SRCS_DEFAULT += SoftKinMain.cpp
SoftKin_SRCS_vxWorks += -nil-
# Add support from base/src/vxWorks if needed
#SoftKin_OBJS_vxWorks += $(EPICS_BASE_BIN)/vxComLibrary
#####ADD Sequencer
#SoftKin_DBD +=
#SoftKinSupport_LIBS += seq pv
SoftKin_SRCS += Kinematics.stt
SoftKin_LIBS += seq pv
# Finally link to the EPICS Base libraries
SoftKin_LIBS += $(EPICS_BASE_IOC_LIBS)
#SoftKin_LIBS += seq pv
#===========================
include $(TOP)/configure/RULES
#----------------------------------------
# ADD RULES AFTER THIS LINE
############ CMD FILE:
#!../../bin/linux-x86_64/SoftKin
#- You may have to change SoftKin to something else
#- everywhere it appears in this file
< envPaths
cd "${TOP}"
## Register all support components
dbLoadDatabase "dbd/SoftKin.dbd"
SoftKin_registerRecordDeviceDriver pdbbase
## Load record instances
#dbLoadRecords("db/SoftKin.db","user=marco")
dbLoadTemplate("${TOP}/SoftKinApp/Db/Kinematics.substitutions")
cd "${TOP}/iocBoot/${IOC}"
iocInit
## Start any sequence programs
seq Kinematics,"BLP=SOL:,HP=S:,MP=m1"