-
Notifications
You must be signed in to change notification settings - Fork 25
/
INSTALL
101 lines (84 loc) · 3.87 KB
/
INSTALL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
-*- outline -*- (use EMACS to see this in outline-mode)
This readme is about compiling the driver & examples.
See /ether_ipApp/doc for info on how to use the driver.
* Intro
The sources for this driver are on SourceForge,
see http://sourceforge.net/apps/trac/epics/wiki/EtherIP
Read-only Mercurial access:
hg clone http://epics.hg.sourceforge.net:8000/hgroot/epics/ether_ip
Read/write Mercurial access:
hg clone ssh://[email protected]/hgroot/epics/ether_ip
Tag: ether_ip-<RELEASE>
What you have to do is
- compile the ether_ip driver/device sources
- somehow load them in the IOC
- include the DBD descriptions of the new device support
so that EPICS knows about them
- create EPICS records that use the new driver
The directory structure and Makefiles were created by
makeBaseApp.pl from EPICS R3.13.3 base and later updated
for EPICS 3.14 base.
- In iocBoot/iocether_ip/Makefile, select the ARCH for the test IOC
(if you want to use that test setup).
- You have to modify configure/RELEASE
so that ETHER_IP point to where you put the stuff, e.g.
ETHER_IP=/cs/epics/ADE/R3.14.11/support/ether_ip/current
* I. ether_ip directory structure:
ether_ip/
README -- this file
ether_ipApp/ - the DRIVER/DEVICE. You need this!
src -- contains the source code and dbd definitions.
Used to build and install the library
libether_ip.a -- containing driver object file
and to install
ether_ip.dbd -- the database definition file
needed by databases using the driver.
doc -- contains the driver specific documentation
testether_ipApp/ - example of EPICS database for ether_ip.
You can use this for reference and tests.
src -- contains an example application that builds a
epics module that uses the ether_ip driver.
Db -- contains sample databases using the ether_ip driver.
dm2k -- contains sample dm2k adl display files.
configure -- configuration setup with RELEASE referring to
location of ETHER_IP for use by the example in testether_ipApp
Makefile -- setup to build 1st ether_ipApp,
then config,
then testether_ipApp, so that the
examples will work.
* II. Build
1. Your usual EPICS environment variables need to be set:
EPICS_HOST_ARCH, PATH to include the EPICS base tools
2. cd where_the_ether_ip_sources_are
3. Edit configure/RELEASE for EPICS BASE and ETHER_IP directory
locations.
4. Edit iocBoot/iocether_ip/Makefile for ARCH
5. make
* III. Use of the ether_ip driver in your ioc application
1. Make sure that the driver code has been checked out and built
as described above. The Make in the config directory
depends on the proper directories already existing.
2. Set up ETHER_IP definitions in the configuration directory
for your application by:
2.1. cd <your ioc application>/configure
2.2. edit the file RELEASE file, add the line
ETHER_IP=/cs/epics/ADE/R3.14.11/support/ether_ip/<RELEASE>
2.3. Make sure the new definitions take effect by
make clean
make
in the configure directory.
3. Set up the dbd include file in your src directory to include
ether_ip.dbd by adding the line
include "ether_ip.dbd"
after the line include "../base.dbd".
Now that RELEASE file has been edited and config or configure has been
rebuilt the Makefile will be able to find ether_ip.dbd
when it expands your dbd file.
4. Set up your application to include the object libraries by
including the following lines in Makefile:
<app>_LIBS += ether_ip
ether_ip_DIR = $(ETHER_IP_LIB)
ETHER_IP_LIB (3.14) will be automatically
defined for every type of ioc for which your application is built.
R. Wright, K. Kasemir
3.14 notes added by S. Allison