Moved from $(TOP)
This commit is contained in:
538
documentation/README.html
Normal file
538
documentation/README.html
Normal file
@@ -0,0 +1,538 @@
|
||||
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<meta name="Author" content="jba">
|
||||
<meta name="GENERATOR" content="Mozilla/4.77 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
|
||||
</head>
|
||||
<body>
|
||||
README.htm
|
||||
<center>
|
||||
<h1>
|
||||
Installation Instructions</h1></center>
|
||||
|
||||
<center>
|
||||
<h2>
|
||||
EPICS base</h2></center>
|
||||
|
||||
<center>
|
||||
<h2>
|
||||
Release 3.14.0beta1</h2></center>
|
||||
|
||||
<h3>
|
||||
What is EPICS base?</h3>
|
||||
|
||||
<blockquote>The Experimental Physics and Industrial Control Systems (EPICS)
|
||||
is an extensible set of software components and tools with which application
|
||||
developers can create a control system. This control system can be used
|
||||
to control accelerators, detectors, telescopes, or other scientific experimental
|
||||
equipment. EPICS base is the set of core software, i.e. the components
|
||||
of EPICS without which EPICS would not function. EPICS base allows an arbitrary
|
||||
number of target systems, IOCs (input/output controllers), and host systems,
|
||||
OPIs (operator interfaces) of various types.</blockquote>
|
||||
|
||||
<h3>
|
||||
What is new in this release?</h3>
|
||||
|
||||
<blockquote>This version of EPICS base contains significant changes and
|
||||
offers major improvements in functionality over previous versions. Please
|
||||
check the RELEASE_NOTES file in the distribution for description of changes
|
||||
and release migration details.</blockquote>
|
||||
|
||||
<h3>
|
||||
Copyright</h3>
|
||||
|
||||
<blockquote>Please review the COPYRIGHT* files included in the distribution
|
||||
for legal terms of usage.</blockquote>
|
||||
|
||||
<h3>
|
||||
Supported platforms</h3>
|
||||
|
||||
<blockquote>Currently this version of EPICS base has been built on the
|
||||
following hosts for the following targets. If you are trying to build EPICS
|
||||
base on a different host or for a different target machine you must get
|
||||
the proper host/target cross compiler and header files and you will have
|
||||
to create and add the appropriate new configure files to the base/configure/os/directory.
|
||||
You can start by copying existing configuration files in the configure/os
|
||||
directory and then make changes for your new platforms.</blockquote>
|
||||
|
||||
<blockquote><b>Host platforms (operating system - architecture - <alternate
|
||||
c++ compiler>)</b>
|
||||
<blockquote><tt>solaris-sparc</tt>
|
||||
<br><tt>solaris-sparc-gnu</tt>
|
||||
<br><tt>linux-x86</tt>
|
||||
<br><tt>win32-x86</tt>
|
||||
<br><tt>win32-x86-borland</tt></blockquote>
|
||||
</blockquote>
|
||||
|
||||
<blockquote>
|
||||
<h4>
|
||||
Cross compile target platforms (operating system - architecture)</h4>
|
||||
</blockquote>
|
||||
|
||||
<blockquote>
|
||||
<blockquote><tt>vxWorks-486</tt>
|
||||
<br><tt>vxWorks-68040</tt>
|
||||
<br><tt>vxWorks-68040lc</tt>
|
||||
<br><tt>vxWorks-68060</tt>
|
||||
<br><tt>vxWorks-ppc603</tt>
|
||||
<br><tt>vxWorks-ppc604</tt>
|
||||
<br><tt>vxWorks-pentium</tt>
|
||||
<br><tt>RTEMS-gen68360</tt>
|
||||
<br><tt>RTEMS-mvme167</tt>
|
||||
<br><tt>RTEMS-pc386</tt></blockquote>
|
||||
</blockquote>
|
||||
|
||||
<h3>
|
||||
Supported compilers</h3>
|
||||
|
||||
<blockquote>This version of EPICS base has been built and tested using
|
||||
the host vendor's C and C++ compilers as well as the GNU gcc and g++ compilers.
|
||||
The GNU cross-compilers have been used for all cross-compiled targets.
|
||||
You may need the host vendor's C++ compiler in your search path to do EPICS
|
||||
builds. Check definitions of ACC and CCC in base/configure/os/CONFIG.<host>.<host>
|
||||
or the definitions for GCC and G++ if ANSI=GCC and CPLUSPLUS=GCC are specified
|
||||
in CONFIG_SITE.</blockquote>
|
||||
|
||||
<h3>
|
||||
Software requirements</h3>
|
||||
|
||||
<blockquote><b>GNU make</b>
|
||||
<br>You must use GNU make, gnumake, for any EPICS builds. Set your
|
||||
path so that a gnumake version 3.70 or later is available.
|
||||
<p><b>Perl</b>
|
||||
<br>You must have perl version 5.0 or later installed. The configure files
|
||||
do not specify the perl full pathname. You need the perl executable
|
||||
in your search path.
|
||||
<p><b>Unzip and tar (Winzip on WIN32 systems)</b>
|
||||
<br>You must have tools available to unzip and untar the EPICS base distribution
|
||||
file.
|
||||
<p><b>Tornado 2.0</b>
|
||||
<br>You must have Tornado 2.0 installed if any of your target systems are
|
||||
vxWorks systems. Tornado 2.0 provides the cross-compiler and header
|
||||
files needed to build for these target systems. The full path location
|
||||
to Tornado 2.0 must be specified in the base/configure/RELEASE or base/configure/RELEASE.<hostarch>
|
||||
file. You will also need one or more board support packages. Consult the
|
||||
vxWorks documentation for details.
|
||||
<p><b>Optional GNU compiler requirement for solaris-sparc and win32-x86
|
||||
hosts</b>
|
||||
<br>If you have state notation language source files (*.st files) which
|
||||
require c preprocessing before conversion to c source, gcc must be
|
||||
in your path.</blockquote>
|
||||
|
||||
<h3>
|
||||
Host system storage requirements</h3>
|
||||
|
||||
<blockquote>The GNU zipped tar file is approximately 1.4 MB in size. The
|
||||
unzipped untarred distribution source tree is approximately 6 MB. The build
|
||||
created files for each host take approximately 40 MB and the build created
|
||||
files for each target take approximately 10 MB.</blockquote>
|
||||
|
||||
<h3>
|
||||
Documentation</h3>
|
||||
|
||||
<blockquote>EPICS documentation is available on the WWW via the EPICS home
|
||||
page at APS: URL <a href="http://www.aps.anl.gov/epics">http://www.aps.anl.gov/epics</a></blockquote>
|
||||
|
||||
<blockquote>This README.htm is in the base distribution file and will be
|
||||
available on the IOC software R3.14 EPICS WWW page which can be accessed
|
||||
from the APS EPICS home page.</blockquote>
|
||||
|
||||
<h3>
|
||||
WWW pages</h3>
|
||||
|
||||
<blockquote>
|
||||
<h4>
|
||||
EPICS home page at APS</h4>
|
||||
|
||||
<blockquote><a href="http://www.aps.anl.gov/epics">http://www.aps.anl.gov/epics</a></blockquote>
|
||||
|
||||
<h4>
|
||||
Other WWW sites</h4>
|
||||
|
||||
<blockquote>Additional information on EPICS can be found at the various
|
||||
other WWW links on the EPICS home page at APS.</blockquote>
|
||||
|
||||
<h4>
|
||||
Mailing Lists</h4>
|
||||
|
||||
<blockquote>There are five EPICS mailing lists provided by APS. See The
|
||||
EPICS home page for subscription instructions.</blockquote>
|
||||
</blockquote>
|
||||
|
||||
<h3>
|
||||
Directory Structure</h3>
|
||||
|
||||
<blockquote>Distribution directory structure:</blockquote>
|
||||
<tt> base
|
||||
Root directory of the base istribution</tt>
|
||||
<br><tt> base/config
|
||||
R3.13 compatibility build configuration files</tt>
|
||||
<br><tt> base/config/tools
|
||||
Perl and shell scripts used in the R3.13 build</tt>
|
||||
<br><tt> base/configure
|
||||
Operating system independent build config files</tt>
|
||||
<br><tt> base/configure/os
|
||||
Operating system dependent build config files</tt>
|
||||
<br><tt> base/configure/tools
|
||||
Perl and shell scripts used in the build</tt>
|
||||
<br><tt> base/copyright
|
||||
Text files describing software copyrights</tt>
|
||||
<br><tt> base/src
|
||||
All epics base source code in subdirectories</tt>
|
||||
<br><tt> base/src/as
|
||||
Access security</tt>
|
||||
<br><tt> base/src/bpt
|
||||
Break point table</tt>
|
||||
<br><tt> base/src/ca
|
||||
Channel access</tt>
|
||||
<br><tt> base/src/cas
|
||||
Channel access server</tt>
|
||||
<br><tt> base/src/db
|
||||
Database access</tt>
|
||||
<br><tt> base/src/db/test
|
||||
Database access tests</tt>
|
||||
<br><tt> base/src/dbStatic
|
||||
Static database access</tt>
|
||||
<br><tt> base/src/dbtools
|
||||
Database dbLoadTemplate tools</tt>
|
||||
<br><tt> base/src/dev
|
||||
Device support (softDev and testDev)</tt>
|
||||
<br><tt> base/src/gdd
|
||||
General data descriptor</tt>
|
||||
<br><tt> base/src/iocsh
|
||||
Ioc shell command interpreter</tt>
|
||||
<br><tt> base/src/libCom
|
||||
General purpose library code in subdirectories</tt>
|
||||
<br><tt> base/src/libCom/bucketLib
|
||||
Hash bucket</tt>
|
||||
<br><tt> base/src/libCom/calc
|
||||
Algebraic expression interpreter</tt>
|
||||
<br><tt> base/src/libCom/cvtFast
|
||||
Fast number to string conversion</tt>
|
||||
<br><tt> base/src/libCom/cxxTemplates C++ templates
|
||||
and templates tests</tt>
|
||||
<br><tt> base/src/libCom/dbmf
|
||||
Memory management for frequent alloc/free</tt>
|
||||
<br><tt> base/src/libCom/ellLib
|
||||
EPICS double linked list</tt>
|
||||
<br><tt> base/src/libCom/env
|
||||
Default EPICS environment settings</tt>
|
||||
<br><tt> base/src/libCom/error
|
||||
Error handling definitions and routines</tt>
|
||||
<br><tt> base/src/libCom/fdmgr
|
||||
File descriptor manager</tt>
|
||||
<br><tt> base/src/libCom/freeList
|
||||
Memory management using free lists</tt>
|
||||
<br><tt> base/src/libCom/gpHash
|
||||
General purpose hash table</tt>
|
||||
<br><tt> base/src/libCom/logClient
|
||||
Logging client</tt>
|
||||
<br><tt> base/src/libCom/macLib
|
||||
Macro substitution handler</tt>
|
||||
<br><tt> base/src/libCom/misc
|
||||
Miscellaneous utilities</tt>
|
||||
<br><tt> base/src/libCom/osi
|
||||
Operating system independent code</tt>
|
||||
<br><tt> base/src/libCom/osi/os
|
||||
Operating system dependant code in subdirectories</tt>
|
||||
<br><tt> base/src/libCom/taskwd
|
||||
Task watchdog</tt>
|
||||
<br><tt> base/src/libCom/test
|
||||
Test tools (timer, semBinary, semMutex,fdmgr, ?)</tt>
|
||||
<br><tt> base/src/libCom/timer
|
||||
Timer</tt>
|
||||
<br><tt> base/src/libCom/tsDefs
|
||||
R3.13 time stamp definitions and routines</tt>
|
||||
<br><tt> base/src/libCom/ring
|
||||
ringPointer: First in first out circular buffers</tt>
|
||||
<br><tt> base/src/libCom/cppStd
|
||||
epicsList: Lists of pointers to objects</tt>
|
||||
<br><tt> base/src/makeBaseApp
|
||||
Perl tool+templates to create ioc app dvl tree</tt>
|
||||
<br><tt> base/src/makeBaseExt
|
||||
Perl tool+templates to create extension dvl tree</tt>
|
||||
<br><tt> base/src/misc
|
||||
Miscellaneous (coreRelease, iocInit, asSub*)</tt>
|
||||
<br><tt> base/src/rec
|
||||
Record support</tt>
|
||||
<br><tt> base/src/registry
|
||||
EPICS support function registry</tt>
|
||||
<br><tt> base/src/rsrv
|
||||
Channel access ioc resource server library</tt>
|
||||
<br><tt> base/src/toolsComm
|
||||
Code for the build tools antelope and e_flex</tt>
|
||||
<br><tt> base/src/util
|
||||
Utilities (ca_test, iocLogServer, startCArepeater)</tt>
|
||||
<br><tt> base/src/vxWorks
|
||||
R3.13 compatibility code specific to vxWorks</tt>
|
||||
<br><tt> base/startup
|
||||
Scripts for setting up path and environment</tt>
|
||||
<p><tt> </tt>Install directories created by the
|
||||
build:
|
||||
<p><tt> base/bin
|
||||
Installed scripts and executables in subdirs</tt>
|
||||
<br><tt> base/lib
|
||||
Installed libraries in arch subdirectories</tt>
|
||||
<br><tt> base/dbd
|
||||
Installed data base definitions</tt>
|
||||
<br><tt> base/include
|
||||
Installed header files</tt>
|
||||
<br><tt> base/include/os
|
||||
Installed os specific header files</tt>
|
||||
<br><tt> base/templates
|
||||
Installed templates</tt>
|
||||
<h3>
|
||||
Build related components</h3>
|
||||
|
||||
<blockquote>
|
||||
<li>
|
||||
base/README* files</li>
|
||||
|
||||
<br><tt>README.htm
|
||||
Instructions for setup and building epics base</tt>
|
||||
<br><tt>
|
||||
(i.e. this document)</tt>
|
||||
<br><tt>README.WIN32 Microsoft
|
||||
WIN32 specific instructions</tt>
|
||||
<br><tt>README.cxxTemplates Information about C++ templates in EPICS
|
||||
base</tt>
|
||||
<br><tt>README.niCpu030 NI cpu030 specific
|
||||
instructions</tt>
|
||||
<br>
|
||||
<li>
|
||||
base/startup directory - contains scripts to set environment and path</li>
|
||||
|
||||
<br><tt>EpicsHostArch c shell script
|
||||
to set EPICS_HOST_ARCH env variable</tt>
|
||||
<br><tt>EpicsHostArch.pl perl script to set EPICS_HOST_ARCH
|
||||
env variable</tt>
|
||||
<br><tt>Site.profile bourne shell
|
||||
script to set path and env variables</tt>
|
||||
<br><tt>Site.cshrc
|
||||
c shell script to set path and env variables</tt>
|
||||
<br><tt>borland.bat WIN32
|
||||
bat file to set path and env variables</tt>
|
||||
<br><tt>win32.bat
|
||||
WIN32 bat file to set path and env variables</tt>
|
||||
<br>
|
||||
<li>
|
||||
base/configure directory - contains build definitions and rules</li>
|
||||
|
||||
<br><tt>CONFIG.CrossCommon Cross build definitions</tt>
|
||||
<br><tt>CONFIG.gnuCommon Gnu compiler build
|
||||
definitions for all archs</tt>
|
||||
<br><tt>CONFIG_ADDONS Definitions
|
||||
for <osclass> and DEFAULT options</tt>
|
||||
<br><tt>CONFIG_BASE
|
||||
EPICS base tool and location definitions</tt>
|
||||
<br><tt>CONFIG_BASE_VERSION Definitions for EPICS base version
|
||||
number</tt>
|
||||
<br><tt>CONFIG_COMMON Definitions
|
||||
common to all builds</tt>
|
||||
<br><tt>CONFIG_ENV
|
||||
Definitions of EPICS environment variables</tt>
|
||||
<br><tt>CONFIG_SITE
|
||||
Site specific make defintions</tt>
|
||||
<br><tt>CONFIG_SITE_ENV Site defaults
|
||||
for EPICS environment variables</tt>
|
||||
<br><tt>CONFIG
|
||||
Includes configure files and allows variable overrides</tt>
|
||||
<br><tt>RELEASE
|
||||
Location of external products such as Tornado II</tt>
|
||||
<br><tt>RULES
|
||||
Includes appropriate rules file</tt>
|
||||
<br><tt>RULES.Db
|
||||
Rules for database and database definition files</tt>
|
||||
<br><tt>RULES_ARCHS
|
||||
Definitions and rules for building architectures</tt>
|
||||
<br><tt>RULES_BUILD
|
||||
Build and install rules and definitions</tt>
|
||||
<br><tt>RULES_DIRS
|
||||
Definitions and rules for building subdirectories</tt>
|
||||
<br><tt>RULES_JAVA
|
||||
Definitions and rules for java jars and classes</tt>
|
||||
<br><tt>RULES_TOP
|
||||
Rules specific to a <top> dir (uninstall and tar)</tt>
|
||||
<br><tt>Sample.Makefile Sample makefile
|
||||
with comments</tt>
|
||||
<br>
|
||||
<li>
|
||||
base/configure/os directory - contains os-arch specific definitions</li>
|
||||
|
||||
<br><tt>CONFIG.<host>.<target> Specific
|
||||
host-target build definitions</tt>
|
||||
<br><tt>CONFIG.Common.<target> Specific
|
||||
target definitions for all hosts</tt>
|
||||
<br><tt>CONFIG.<host>.Common
|
||||
Specific host definitions for all targets</tt>
|
||||
<br><tt>CONFIG.UnixCommon.Common Definitions for Unix
|
||||
hosts and all target</tt>
|
||||
<br><tt>CONFIG.<host>.vxWorksCommon Specific host definitions for all
|
||||
vx targets</tt>
|
||||
<br><tt>CONFIG_COMPAT
|
||||
R3.13 arch compatibility definitions</tt>
|
||||
<br><tt>CONFIG_SITE.<host>.<target> Site specific host-target definitions</tt>
|
||||
<br><tt>CONFIG_SITE.Common.<target> Site specific target defs for all
|
||||
hosts</tt>
|
||||
<br><tt>CONFIG_SITE.<host>.Common Site specific host defs
|
||||
for all targets</tt>
|
||||
<br>
|
||||
<li>
|
||||
base/configure/tools directory - contains Perl scripts used for the build</li>
|
||||
|
||||
<br><tt>MakeReleae
|
||||
Unix shell script to create a release tar file</tt>
|
||||
<br><tt>convertRelease.pl Performs
|
||||
consistancy checks on RELEASE files</tt>
|
||||
<br><tt>cp.pl
|
||||
This Perl script copies an existing file</tt>
|
||||
<br><tt>installEpics.pl
|
||||
Installs built files into install directories.</tt>
|
||||
<br><tt>makeDependsTargets.pl Creates targets of include dependency
|
||||
files</tt>
|
||||
<br><tt>makeMakefile.pl
|
||||
Creates a Makefile in O.<arch> dirs</tt>
|
||||
<br><tt>makeMakefileInclude.pl Creates file to be included by Makefile</tt>
|
||||
<br><tt>mkdir.pl
|
||||
Creates a directory (like Unix mkdir)</tt>
|
||||
<br><tt>mkmf.pl
|
||||
Generates dependencies from include stmnts</tt>
|
||||
<br><tt>munch.pl
|
||||
Creates a ctdt.c file for vxWorks targets</tt>
|
||||
<br><tt>mv.pl
|
||||
Renames an existing file.</tt>
|
||||
<br><tt>replaceVAR.pl
|
||||
Changes CapFast VAR(xxx) to $(xxx) notation</tt>
|
||||
<br><tt>rm.pl
|
||||
Quietly removes an existing file.</tt></blockquote>
|
||||
|
||||
<h3>
|
||||
Building EPICS base (Unix and Win32)</h3>
|
||||
|
||||
<blockquote><b>Unpack file</b>
|
||||
<blockquote>Unzip and untar the distribution file. Use WinZip on Windows
|
||||
systems.</blockquote>
|
||||
S<b>et environment variables</b>
|
||||
<blockquote>Files in the base/startup directory have been provided to help
|
||||
set required path and other environment variables .
|
||||
<p><b>EPICS_HOST_ARCH</b>
|
||||
<br>Before you can build or use EPICS R3.14, the environment variable EPICS_HOST_ARCH
|
||||
must be defined. A perl script EpicsHostArch.pl in the base/startup directory
|
||||
has been provided to help set EPICS_HOST_ARCH. You should have EPICS_HOST_ARCH
|
||||
set to your host operating system followed by a dash and then your host
|
||||
architecture, e.g. solaris-sparc. If you are not using the OS vendor's
|
||||
c/c++ compiler for host
|
||||
<br>builds, you will need another dash followed by the alternate compiler
|
||||
name (e.g. "-gnu" for GNU c/c++ compilers on a solaris host or "-borland"
|
||||
for Borland c/c++ compilers on a WIN32 host) . See configure/CONFIG_SITE
|
||||
for a list of supported EPICS_HOST_ARCH values.
|
||||
<p><b>PERLLIB</b>
|
||||
<br>On WIN32, some versions of Perl require that the environment
|
||||
variable PERLLIB be set to <perl directory location>.</blockquote>
|
||||
|
||||
<blockquote><b>PATH</b>
|
||||
<br>As already mentioned, you must have the perl executable and you may
|
||||
need C and C++ compilers in your search path. For building base you also
|
||||
must have echo in your search path. For Unix host builds you also need
|
||||
touch, cpp, cp, rm, mv, and mkdir in your search path and /bin/chmod must
|
||||
exist. On some Unix systems you may also need ar and ranlib in your path,
|
||||
and the c compiler may require ld in your path.
|
||||
<p><b>LD_LIBRARY_PATH</b>
|
||||
<br>If you plan to build EPICS base shared libraries instead of archive
|
||||
libraries, on Unix systems you will need to add fullpathname to $(INSTALL_LOCATION)/lib/$(EPICS_HOST_ARCH)
|
||||
to your LD_LIBRARY_PATH environment variable.
|
||||
<p><b>PATH</b>
|
||||
<br>On WIN32 systems, building shared libraries is the default setting
|
||||
and you will need to add fullpathname to $(INSTALL_LOCATION)/lib/$(EPICS_HOST_ARCH)
|
||||
to your path. Building shared libraries is determined by the value of the
|
||||
macro SHARED_LIBRARIES in CONFIG_SITE (either YES or NO).
|
||||
<br> </blockquote>
|
||||
<b>Do site-specific build configuration</b>
|
||||
<blockquote><b>Site configuration</b>
|
||||
<br>To configure EPICS, you may want to modify the default definitions
|
||||
in the following files:
|
||||
<blockquote><tt>configure/CONFIG_SITE </tt>Build
|
||||
choices. Specify target archs.
|
||||
<br><tt>configure/CONFIG_SITE_ENV </tt>Environment variable defaults
|
||||
<br><tt>configure/RELEASE </tt>TORNADO
|
||||
2 full path location</blockquote>
|
||||
<b>Host configuration</b>
|
||||
<br>To configure each host system, you may override the default definitions
|
||||
by adding a new file with override definitions into the configure/os directory.
|
||||
The new file should have the same name as the distribution file to be overridden
|
||||
except with CONFIG in the name changed to CONFIG_SITE.
|
||||
<blockquote><tt>configure/os/CONFIG.<host>.<host></tt>
|
||||
- Host build settings
|
||||
<br><tt>configure/os/CONFIG.<host>.Common</tt>
|
||||
- Host cross build settings</blockquote>
|
||||
<b>Target configuration</b>
|
||||
<br>To configure each target system, you may override the default definitions
|
||||
by adding a new file with override definitions into the configure/os directory.
|
||||
The new file should have the same name as the distribution file to be overridden
|
||||
except with CONFIG in the name replaced by CONFIG_SITE.
|
||||
<blockquote><tt>configure/os/CONFIG.Common.<target></tt>
|
||||
- Target cross settings
|
||||
<br><tt>configure/os/CONFIG.<host>.<target> </tt> - Host-target
|
||||
settings</blockquote>
|
||||
<b>R3.13 compatibility configuration</b>
|
||||
<br>To configure EPICS base for building with R3.13 extensions and ioc
|
||||
applications , you must modify the default definitions in the base/config/CONFIG_SITE*
|
||||
files to agree with definitions you made in base/configure and base/configure/os
|
||||
files.</blockquote>
|
||||
|
||||
<h4>
|
||||
<b>Build EPICS base</b></h4>
|
||||
|
||||
<blockquote>After configuring the build you should be able to build EPICS
|
||||
base by issuing the following commands in the distribution's root directory
|
||||
(base)
|
||||
<blockquote><tt>gnumake clean uninstall</tt>
|
||||
<br><tt>gnumake</tt></blockquote>
|
||||
The command "gnumake clean uninstall" will remove all files and directories
|
||||
generated by a previous build. The command "gnumake" will build and install
|
||||
everything for the configured host and targets.
|
||||
<br>It is recommended that you do a "gnumake clean uninstall" at the root
|
||||
directory of an EPICS directory structure before each complete rebuild
|
||||
to ensure that all components will be rebuilt.</blockquote>
|
||||
</blockquote>
|
||||
|
||||
<h3>
|
||||
Multiple host platforms</h3>
|
||||
|
||||
<blockquote>You can build using a single EPICS directory structure on multiple
|
||||
host systems and for multiple cross target systems. The intermediate and
|
||||
binary files generated by the build will be created in separate subdirectories
|
||||
and installed into the appropriate separate host/target install directories.
|
||||
EPICS executables and perl scripts are installed into the <tt>$(INSTALL_LOCATION)/bin/<arch></tt>
|
||||
directories. Libraries are installed into $<tt><font size=+1>(INSTALL_LOCATION)/lib/<arch></font></tt>.
|
||||
The default definition for <tt>$(INSTALL_LOCATION)</tt> is <tt>$(TOP)</tt>
|
||||
which is the root directory in the distribution directory structure, base.
|
||||
Created object files are stored in O.<arch> source subdirectories, This
|
||||
allows objects for multiple cross target architectures to be maintained
|
||||
at the same time. To build EPICS base for a specific host/target combination
|
||||
you must have the proper host/target c/c++ cross compiler and target header
|
||||
files and the base/configure/os directory must have the appropriate configure
|
||||
files.</blockquote>
|
||||
|
||||
<h3>
|
||||
Example application and extension</h3>
|
||||
|
||||
<blockquote>A perl tool, makeBaseApp.pl is included in the distribution
|
||||
file. This script will create a sample application that can be built and
|
||||
then executed to try out this release of base. Also, a perl script, makeBaseExt.pl,
|
||||
is included in the distribution file. This script will create a sample
|
||||
extension that can be built and executed. The makeBaseApp.pl and makeBaseExt.pl
|
||||
scripts are installed into the install location bin/<hostarch> directory
|
||||
during the base build.</blockquote>
|
||||
|
||||
<blockquote>Instructions for building and executing the 3.14 example application
|
||||
can be found in the section "Example Application" of Chapter 2, "New Features
|
||||
for 3.14", in the "IOC Application Developer's Guide R3.14.0beta1".
|
||||
The "Example Application" section briefly explains how to create and build
|
||||
an example application in a user created <top> directory. It also explains
|
||||
how to run the example application on a vxWorks ioc or a host system and
|
||||
run an example channel access client on the host system.</blockquote>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user