On 08/26, Ralph Lange via Core-talk wrote:
> On Wed, 26 Aug 2020 at 13:56, Heinz Junkes via Core-talk <
> core-talk at aps.anl.gov> wrote:
>
> > I received the following question from an RTEMS developer:
> >
> > > How is EPICS used in real systems? Is the production executable built by
> > EPICS
> > > from the EPICS source tree? Is it a set of libraries that get installed
> > and an
> > > application links in these libraries?
> >
> > What should I answer?
> >
>
> Obviously the second option.
> EPICS Base provides libraries and the build system, the user creates their
> own IOC application binary, linking in those libraries.
Just so the RTEMS developer doesn't get surprised by non-UNIX-like
shared library behavior, it might also be worth mentioning to them that
there is no guarantee of API nor ABI backward compatibility whatsoever
in EPICS Base, even across a patch version increase.
The UNIX-like shared library versioning scheme is that you have
libfoo.so.MAJOR.MINOR and symlinks that allow you to provide updated
libraries that bump MINOR but don't break backward compatibility.
The MINOR version increase will only contain backward-compatible
changes, and then when the application starts, it will try to
load libfoo.so.MAJOR which will be a symlink to the latest
libfoo.so.MAJOR.MINOR thus allowing the application to receive
backward-compatible changes without needing to be recompiled.
Unfortunately, EPICS Base libraries don't work this way. I only say
this in light of the "Is it a set of libraries that get installed and an
application links in these libraries?" question since the "application
links in" part of that will be very fragile. The exact version of EPICS
Base libraries that an application was compiled against are the ones
that are required to be installed in order for the application to work.
If instead a new version of EPICS Base is installed that replaces the
old version, then any applications must be recompiled against the new
EPICS Base libraries.
Lewis
- Replies:
- Re: Question from the RTEMS corner Chris Johns via Core-talk
- References:
- Question from the RTEMS corner Heinz Junkes via Core-talk
- Re: Question from the RTEMS corner Ralph Lange via Core-talk
- Navigate by Date:
- Prev:
Re: Question from the RTEMS corner Ralph Lange via Core-talk
- Next:
Minor issue with base 7.0.4.1 Mark Rivers via Core-talk
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
<2020>
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: Question from the RTEMS corner Ralph Lange via Core-talk
- Next:
Re: Question from the RTEMS corner Chris Johns via Core-talk
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
<2020>
2021
2022
2023
2024
|