EPICS Extensions Upgrade - PowerPoint PPT Presentation

1 / 8
About This Presentation
Title:

EPICS Extensions Upgrade

Description:

Problems when mixing code compiled on different systems. (C functions not found, wrong GLIBC version, ... Changes in Makefiles of base and extensions required. ... – PowerPoint PPT presentation

Number of Views:21
Avg rating:3.0/5.0
Slides: 9
Provided by: Adm947
Category:

less

Transcript and Presenter's Notes

Title: EPICS Extensions Upgrade


1
EPICS Extensions Upgrade
  • Problems and solutions

2
Why was a change necessary?
  • RH7.3 and SL3 are different but default EPICS
    Makefiles handle both as linux-x86.
  • Problems when mixing code compiled on different
    systems.(C functions not found, wrong GLIBC
    version, )
  • Need separate architectures (EPICS_HOST_ARCH).
  • linux-x86 for RH7.3
  • SL3-x86 for SL3
  • Changes in Makefiles of base and extensions
    required.
  • Do not compile extensions with unmodified
    Makefiles from EPICS homepage! Use our version
    from CVS!

3
Building extensions from CVS
  • CVS location G/EPICS/extensions
  • ssh pc4015 (or your development machine, dont
    develop on slslc03!)
  • cvs checkout extensions-cfg
  • extensions/
  • Makefileconfigure/config/src/
  • Makefile
  • cd extensions/src
  • cvs co medm (or any other extension)
  • make medm

4
Putting new extensions into CVS
  • Unpack the extension tar file
  • You normally get a directory structure like this
  • extensions/Makefilesrc/ Makefile ltXXXgt/
  • cd extensions/src/ltXXXgt
  • tkcvs CVS?Import WD into Repository
  • New Module Name ltXXXgt
  • New Module path relative to CVSROOT
    G/EPICS/extensions/src/ltXXXgt
  • Contact me!

5
Install locations
  • Binaries /usr/local/epics/extensions/bin/ltarchgt/
  • Libraries /usr/local/epics/extensions/lib/ltarchgt/
  • Links /usr/local/bin/
  • /usr/local/bin/ is in PATH
  • Tell me missing links.
  • Dont put other locations before standard PATH or
    you might get wrong program versions!
  • In EPICS 3.14, programs know where the libraries
    are.No need to set LD_LIBRARY_PATH.

6
Extensions and base
  • Directory structure
  • /usr/local/epics/ base-3.13.10/ base-3.14.7/
    base-3.14.8/ base? base-3.14.8 extensions/
  • Extensions are linked to /usr/local/epics/base/lib
    /ltarchgt/(when built with our extensions
    Makefiles).
  • No need to rebuild extensions when upgrading base.

7
Compatibility issues
  • Old 3.13 extensions dont know where their
    libraries are.
  • LD_LIBRARY_PATH contains SLSBASE/lib with 3.13.2
    libs.
  • Early 3.14 extensions are linked to
    /usr/local/epics3.14.7/base/lib/ltarchgt/
  • /usr/local/epics3.14.7/base ? ../epics/base-3.14.7
  • IDL (and other programs?) expect environment
    variables EPICS_EXTENSIONS and EPICS_HOST_ARCH,
    which have changed.
  • Dont overwrite those variables in your scripts!
  • Check if IDL scripts still work (i.e. find latest
    EPICS version)

8
Our upgrading procedure
  • Upgrade should work smoothly
  • First test everything on dedicated test machines
    (e.g. pc4015)
  • If everything works, create a tar file and
    install it on slslc03 and slslc02 for field
    test.
  • If everything works for at least a week, install
    it on all machines.
  • If unexpected problems appear, contact us
  • Dirk, Werner, Gaudenz, Dennis, David
  • For missing extensions (e.g. interfaces to other
    tools),contact me.
Write a Comment
User Comments (0)
About PowerShow.com