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  <20232024  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  <20232024 
<== Date ==> <== Thread ==>

Subject: RE: How to use INSTALL_LOCATION with system directories
From: Abdalla Ahmad via Tech-talk <tech-talk at aps.anl.gov>
To: Lucas Russo <lerwys at gmail.com>
Cc: "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>
Date: Mon, 9 Oct 2023 11:54:11 +0000

Forgot to say that in order to mimic “make install” behavior, I think you only need INSTALL_LOCATION, so you can do something like this

 

INSTALL_LOCATION=/usr/lib/epics make

 

But again you need to have permissions on that directory, or use “sudo”.

 

From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of Abdalla Ahmad via Tech-talk
Sent: Monday, October 9, 2023 2:50 PM
To: Lucas Russo <lerwys at gmail.com>
Cc: tech-talk at aps.anl.gov
Subject: RE: How to use INSTALL_LOCATION with system directories

 

Hello Lucas

 

You are right about the behavior of INSTALL_LOCATION, by default it is set to $(TOP), then the build creates directories in INSTALL_LOCATION. This variable is used for staged build along with FINAL_LOCATION, where INSTALL_LOCATION is a temporary build location and FINAL_LOCATION points to the “final” location. I found some notes about these two variables here, you can see a practical use for these two here and here. The EPICS build system is not standard “autotools” based system where you can do stuff like “./configure”, “make” and “make install”.

 

Best Regards,

Abdalla.

 

From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of Lucas Russo via Tech-talk
Sent: Monday, October 9, 2023 12:46 PM
To: EPICS Tech Talk <tech-talk at aps.anl.gov>
Subject: How to use INSTALL_LOCATION with system directories

 

Hi all,

 

Maybe this has already been answered, but I couldn't find this exact question.

 

I have an example support module created with:

 

makeBaseApp.pl -t ioc testInstallLocation

makeBaseApp.pl -i -t ioc testInstallLocation

 

with its configure/CONFIG_SITE file with:

 

INSTALL_LOCATION=/opt/test

 

My expectation was that I would be able to do "make" to compile everything and

"make install" to install the bin, lib, etc, folders to where INSTALL_LOCATION points to,

but that was not the case.

 

With INSTALL_LOCATION different than $(TOP) it tries to create the destination directories 

before compiling anything, thus failing because /opt is owned by root. And doing "sudo make" seems wrong.

 

Is there any better way to do this or to change this behavior? Or is my expectation wrong about the usage of INSTALL_LOCATION?

 

Lucas

 


References:
How to use INSTALL_LOCATION with system directories Lucas Russo via Tech-talk
RE: How to use INSTALL_LOCATION with system directories Abdalla Ahmad via Tech-talk

Navigate by Date:
Prev: RE: How to use INSTALL_LOCATION with system directories Abdalla Ahmad via Tech-talk
Next: Re: How to use INSTALL_LOCATION with system directories Ralph Lange 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  <20232024 
Navigate by Thread:
Prev: RE: How to use INSTALL_LOCATION with system directories Abdalla Ahmad via Tech-talk
Next: Re: How to use INSTALL_LOCATION with system directories Ralph Lange 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  <20232024 
ANJ, 09 Oct 2023 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·