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  <20222023  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  <20222023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Building with INSTALL_PATH=
From: Andrew Johnson via Tech-talk <tech-talk at aps.anl.gov>
To: tech-talk at aps.anl.gov
Date: Wed, 31 Aug 2022 17:04:39 -0500
Hi David,

On 8/31/22 8:29 AM, Dudley, David via Tech-talk wrote:
I’m building with EPICS 7 – current github release.

 

Trying to build into a directory –other- than where it’s stored (it’s on a USB stick, would rather the result be on the internal SSD).

 

Doing building using ‘make INSTALL_LOCATION=xxx’, and things go OK for a while.  Everything gets loaded onto the SSD.

Now, that’s until the build gets down to needing ‘makeMakeFile.pl’ or one of the other perl scripts.  Those insist on being invoked directly from the bin directory of the source structure.

Actually it's only once it reaches modules/pvData that there's a problem, but I do agree that there's a problem with INSTALL_LOCATION. The build has been happily running Perl scripts from the $(INSTALL_LOCATION)/bin/<host> directory up until then.

Do I need to add something else to this?

 

BTW: changing INSTALL_PATH in the CONFIG_SITE file doesn’t make this work, and I’m trying to do all of this –without- modifying any of the downloaded files.

After applying this fix to the source files:
diff --git a/configure/RULES_ARCHS b/configure/RULES_ARCHS
index 4aaa75870..18b4954ad 100644
--- a/configure/RULES_ARCHS
+++ b/configure/RULES_ARCHS
@@ -64,7 +64,7 @@ $(BUILD_ARCHS) : % : O.% O.Common
 $(ACTIONS) : % : $(foreach arch, $(BUILD_ARCHS), %$(DIVIDER)$(arch))
 
 $(buildDirs):
-       $(PERL) $(TOOLS)/makeMakefile.pl $@ $(TOP)/..
+       $(PERL) $(call FIND_TOOL,makeMakefile.pl) $@ $(TOP)/..
 
 O.Common:
        $(MKDIR) O.Common
and creating a new (git-ignored) file in the configure directory that sets INSTALL_LOCATION:
$ echo INSTALL_LOCATION = /Users/anj/install-7.0> configure/CONFIG_SITE.local
$ cat configure/CONFIG_SITE.local
INSTALL_LOCATION = /Users/anj/install-7.0
$
I was able to run a build which installed to that location using just the command 'make'.

If you have ever tried to compile Base since you unpacked it, even if you have since run "make distclean", you must manually remove the file modules/RELEASE.*.local as that file points the submodules to where they are supposed to install themselves, and doesn't get updated if/when you change INSTALL_LOCATION.

I will commit the above fix to GitHub in the next day or so.

HTH,

- Andrew
-- 
Complexity comes for free, Simplicity you have to work for.

References:
Building with INSTALL_PATH= Dudley, David via Tech-talk

Navigate by Date:
Prev: RE: Problem with DB_INSTALLS in Makefile Mark Rivers via Tech-talk
Next: Re: asyn build fail Hu, Yong 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  <20222023  2024 
Navigate by Thread:
Prev: Building with INSTALL_PATH= Dudley, David via Tech-talk
Next: Problem with DB_INSTALLS in Makefile Mark Rivers 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  <20222023  2024 
ANJ, 14 Sep 2022 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·