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  <20122013  2014  2015  2016  2017  2018  2019  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019 
<== Date ==> <== Thread ==>

Subject: Converting driver of R3.13 Applications to R3.14
From: "Bai Jiaoni" <baijn@ihep.ac.cn>
To: tech-talk@aps.anl.gov
Date: Thu, 8 Mar 2012 13:14:48 +0800 (CST)
Hello
I write a driver for Epics 3.13, but now I need to use it for epics 3.14. I 
add some items in <top>/exampleApp/src/Makefile as follows:

TOP=../..

include $(TOP)/configure/CONFIG
#----------------------------------------
#  ADD MACRO DEFINITIONS AFTER THIS LINE
#=============================
# Only build for "hard" IOC's
#
ifneq ($(findstring Host, $(VALID_BUILDS)),)
    VALID_BUILDS = Host
endif

#==================================================
# Build an IOC support library

LIBRARY_IOC += xxxSupport

# xxxRecord.h will be created from xxxRecord.dbd
DBDINC += xxxRecord
# install devXxxSoft.dbd into <top>/dbd
DBD += xxxSupport.dbd

# The following are compiled and added to the Support library
xxxSupport_SRCS += xxxRecord.c
xxxSupport_SRCS += devXxxSoft.c

xxxSupport_LIBS += $(EPICS_BASE_IOC_LIBS)

#=============================
# build an ioc application

PROD_IOC = example
# example.dbd will be created and installed
DBD += example.dbd

# example.dbd will be made up from these files:
example_DBD += base.dbd
example_DBD += xxxSupport.dbd
example_DBD += dbSubExample.dbd
example_DBD += exampleHello.dbd
example_DBD += BPEM.dbd

# <name>_registerRecordDeviceDriver.cpp will be created from <name>.dbd
example_SRCS += example_registerRecordDeviceDriver.cpp
example_SRCS_DEFAULT += exampleMain.cpp
example_SRCS_vxWorks += -nil-

# Add locally compiled object code
example_SRCS += dbSubExample.c
example_SRCS += exampleHello.c
example_SRCS += drvBPEM.c
example_SRCS += devBPEM.c
example_SRCS += universe.c
example_SRCS += dmaLib.c

# The following adds support from base/src/vxWorks
example_OBJS_vxWorks += $(EPICS_BASE_BIN)/vxComLibrary

example_LIBS += xxxSupport

# NOTE: To build SNL programs, SNCSEQ must be defined
# in the <top>/configure/RELEASE file

ifneq ($(SNCSEQ),)
    # This builds sncExample as a component of example
    example_SNCFLAGS += +r
    example_DBD += sncExample.dbd
    example_SRCS += sncExample.stt
    example_LIBS += seq pv

    # The following builds sncProgram as a standalone application
    PROD_HOST += sncProgram
    sncProgram_SNCFLAGS += +m
    sncProgram_SRCS += sncProgram.st
    sncProgram_LIBS += seq pv
    sncProgram_LIBS += $(EPICS_BASE_HOST_LIBS)
endif

example_LIBS += $(EPICS_BASE_IOC_LIBS)

#===========================

include $(TOP)/configure/RULES
#----------------------------------------
#  ADD RULES AFTER THIS LINE

When I make in <top>/, it reports error

../drvBPEM.c:26:21: vxWorks.h: No such file or directory
../drvBPEM.c:27:19: vxLib.h: No such file or directory
../drvBPEM.c:28:17: vme.h: No such file or directory
../drvBPEM.c:29:23: rebootLib.h: No such file or directory
../drvBPEM.c:30:21: taskLib.h: No such file or directory
../drvBPEM.c:31:20: sysLib.h: No such file or directory
../drvBPEM.c:32:20: logLib.h: No such file or directory
../drvBPEM.c:33:20: intLib.h: No such file or directory
../drvBPEM.c:34:16: iv.h: No such file or directory

But when I add items as follows, there exits no error.
#---------------------
# Only build for "hard" IOC's
#
ifneq ($(findstring Host, $(VALID_BUILDS)),)
    VALID_BUILDS = Host
endif
#---------------------
But I don't know what is the function of these codes and why these codes can solve
my prolem. 
Besides my host architechture is linux-x86 and cross complier target architecture is 
vxworks ppc604. I think maybe VALID_BUILDS = Ioc is suitable for vxworks, but there
still exits the errors in this case. I don't know why.
Thank you.

--
Jiaoni Bai 
Institute of High Energy Physics, CAS
NO.13 of Yuquan Road Haidian, Beijing China

 

Navigate by Date:
Prev: Re: What's the status of EPICS on RTEMS? Williams Jr., Ernest L.
Next: Re: What's the status of EPICS on RTEMS? Kate Feng
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019 
Navigate by Thread:
Prev: Re: What's the status of EPICS on RTEMS? Kate Feng
Next: How do you close a CSS BOY window? Xinyu.Wu
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·