diff --git a/README.htm b/README.htm new file mode 100644 index 000000000..7291765d0 --- /dev/null +++ b/README.htm @@ -0,0 +1,643 @@ + + +
+ + + + + +
Installation
+Instructions
EPICS
+base
Release 3.14.0alpha1
What
+is EPICS base?
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.
What
+is new in this release?
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.
Copyright
Please review the COPYRIGHT* files included in the
+distribution for legal terms of usage.
Supported
+platforms
Currently this version of EPICS base has been built
+on the following hosts and targets. If you are trying to build EPICS base on a
+different host or for a different target machine you must have the proper
+host/target cross compiler and header files and you will have to add the
+appropriate 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.
Host target platforms (operating system –
+architecture - <alternate c++ compiler>)
solaris - sparc
linux - x86
win32 - x86
win32
+- x86 - borland
Cross compile target platforms (operating system -
+architecture)
vxWorks
+- 486
vxWorks - 68040
vxWorks - 68040lc
vxWorks
+- 68060
vxWorks
+- ppc604
vxWorks
+- pentium
RTEMS
+- gen68360
RTEMS
+- mvme167
Supported
+compilers
This version of EPICS base
+has been built and tested using the host vendor's C++ compiler as well as the
+GNU g++ compiler. The GNU cross-compiler has 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
+the 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.
Software
+requirements
+
GNU make
You must use GNU make, gnumake, for any EPICS builds. Set your path so that a gnumake version 3.70
+or later is available.
Perl
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.
Unzip and tar (Winzip on
+WIN32 systems)
You
+must have tools available to unzip and untar the EPICS base distribution file.
Tornado 2.0
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
+file. You will
+also need one or more board support packages. Consult the vxWorks documentation
+for details.
Host
+system storage requirements
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.
Documentation
EPICS documentation is available
+on the WWW via the EPICS home page at APS:
+URL http://www.aps.anl.gov/Epics
HTML and ascii text versions
+of this README file are in the distribution file and they are also will be available
+on the IOC software R3.14 page which can be accessed from the APS EPICS home
+page.
WWW
+pages
EPICS home page at APS
Other WWW sites
Additional information on
+EPICS can be found at the various other WWW links on the EPICS home page at
+APS.
Mailing Lists
There are five EPICS mailing lists provided by APS.
+See The EPICS home page for subscription instructions.
Distribution
+components (this section needs work)
README Files
Startup directory files
.cshrc
EpicsHostArch
epics.bat
.bashrc
…
Configure directory
Directory structure
OS file naming convention
Directory structure
Building
+EPICS base (Unix and Win32)
Unpack file
Unzip and untar the
+distribution file. Use WinZip on Windows systems.
Set environment variable
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.
Check path requirements
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 you path.
Do
+site-specific build configuration
Site configuration
To configure EPICS, you may want to modify the default definitions
+in the following files:
configure/CONFIG_SITE - Build choices. Specify your
+targets architectures.
configure/CONFIG_SITE_ENV - Set your environment variable definitions
configure/RELEASE -
+TORNADO full path location
Host configuration
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.
configure/os/CONFIG.<host>.<host> - Host build settings
configure/os/CONFIG.<host>.Common - Host cross build settings
Target configuration
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.
configure/os/CONFIG.Common.<target> - Target cross build settings
configure/os/CONFIG.<host>.<target> - Host-target build settings
+ +Build EPICS base
After configuring the build you should be able to
+build EPICS base by issuing the following commands in the distribution’s root
+directory (base) -
gnumake clean
+uninstall
gnumake
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.
It is recommended that you
+do a “make clean uninstall” at the root directory of an EPICS directory structure before each complete
+rebuild to ensure that all components will be rebuilt.
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 system subdirectories
+and installed into the appropriate separate host/target install directories.
+EPICS executables and perl scripts are installed into the $(INSTALL_LOCATION)/bin/<arch>
+directories. Libraries are installed into $(INSTALL_LOCATION)/lib/<arch>.
+The default definition for $(INSTALL_LOCATION) is $(TOP) which is the rootdirectory
+in the directory structure, base. Temporary objects 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++
+cross compiler and target header files and the base/configure/os directory must
+have the appropriate configure files.
Example
+base application
A perl tool, makeBaseApp.pl is included in the
+distribution file. This script will create a sample application that then can built
+and the executed to try out this release of base. Also a perl tool, makeBaseExt.pl
+is included in the distribution file. This script will create a sample
+extension that then can be built and executed. The makeBaseApp.pl and
+makeBaseExt.pl scripts will be installed into the bin/<hostarch> during
+the base build.