EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  <2024 Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  <2024
<== Date ==> <== Thread ==>

Subject: RE: epics build system question again - build order
From: Mark Rivers via Tech-talk <tech-talk at aps.anl.gov>
To: William Kirstaedter <kirstaedter at fhi-berlin.mpg.de>, Ralph Lange <ralph.lange at gmx.de>, EPICS Tech Talk <tech-talk at aps.anl.gov>
Date: Mon, 10 Jun 2024 18:24:58 +0000

Hi William,

 

  • another quick question: how can I tell EPICS to static compile the support library?
  • It uses some system library that needs additional compiler flags, and I would have to repeat them in the IOC-generating App... 

Put this line in the support Makefile:

 

STATIC_BUILD=YES

 

However, that may not do what you want.  On most modern Linux systems the system libraries are only available as shareable libraries (.so), they are no longer provided as static libraries (.a).  That means the IOC-generating App does need to build with the system libraries, they won’t be included in the statically built support library.

 

Mark

 

 

From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of William Kirstaedter via Tech-talk
Sent: Monday, June 10, 2024 1:19 PM
To: Ralph Lange <ralph.lange at gmx.de>; EPICS Tech Talk <tech-talk at aps.anl.gov>
Subject: Re: epics build system question again - build order

 

Thanks.

Its a support library as far as I can tell.
source: https://groups.nscl.msu.edu/controls/files/devSnmp.html
download: https://groups.nscl.msu.edu/controls/

I think renaming to snmpSup is more self-explanatory, that way the Makefile stays default ... nobody reads Makefiles, or check for irregularities. :>

another quick question: how can I tell EPICS to static compile the support library?
It uses some system library that needs additional compiler flags, and I would have to repeat them in the IOC-generating App... 

cheers!

William Kirstaedter
PP&B Computer Support Group
Fritz-Haber-Institut Berlin

Am 10.06.24 um 19:57 schrieb Ralph Lange via Tech-talk:

On Mon, 10 Jun 2024 at 19:47, William Kirstaedter via Tech-talk <tech-talk at aps.anl.gov> wrote:


my main App is called IOCINFRAApp, the support App is called snmpApp.
the build system now tries to compile IOCINFRAApp first, and fails
because a dbd file from snmpApp is not yet available.

I've renamed my snmpApp to 0snmpApp and it works, but thats too hacky in
my eyes.
Is there some more elegant way to achieve that snmpApp gets built before
IOCINFRAApp ?

 

In general:

There are applications that generate IOCs, and there are support applications that provide things (libraries, templates) to be used by IOC-creating apps.

If the IOC-creating kind are called *App and the support applications are called *Sup, the default order (first *Sup, then *App) will work.

 

Specifically:

You can always declare a dependency that is not covered by the default build order in the Makefile. In your case,

IOCINFRAApp_DEPEND_DIRS += snmpApp

 

Cheers,
~Ralph

 


Replies:
Re: epics build system question again - build order Johnson, Andrew N. via Tech-talk
References:
epics build system question again - build order William Kirstaedter via Tech-talk
Re: epics build system question again - build order Ralph Lange via Tech-talk
Re: epics build system question again - build order William Kirstaedter via Tech-talk

Navigate by Date:
Prev: Re: epics build system question again - build order William Kirstaedter via Tech-talk
Next: Re: epics build system question again - build order Johnson, Andrew N. via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  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: epics build system question again - build order William Kirstaedter via Tech-talk
Next: Re: epics build system question again - build order Johnson, Andrew N. via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  <2024
ANJ, 10 Jun 2024 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·