[ET Trac] [Einstein Toolkit] #136: Don't rebuild external libraries so often

Einstein Toolkit trac-noreply at einsteintoolkit.org
Sat Jul 16 16:56:13 CDT 2011


#136: Don't rebuild external libraries so often
--------------------------+-------------------------------------------------
  Reporter:  eschnett     |       Owner:     
      Type:  enhancement  |      Status:  new
  Priority:  minor        |   Milestone:     
 Component:  Cactus       |     Version:     
Resolution:               |    Keywords:     
--------------------------+-------------------------------------------------

Comment (by bmundim):

 Hi,

 the way I used to deal with this problem was simply to build the libraries
 and move them elsewhere
 outside the configuration directory or Cactus tree. That had worked fine
 for me so far and I think
 that would work for most people as well, since they can always name the
 external directory to match
 the configuration and let the config-info to exist there as well as a
 reminder of the compiler options
 used. However, recently, after one of those "sim-reconfig" that doesn't
 actually reconfigure anything,
 I erased the configuration that I used originally to build the libraries.
 I started then to have
 problems with the gsl library, which has already been installed.
 Investigating this issue I found out
 that the options set in GSL.sh uses  ${GSL_DIR}/bin/gsl-config, which
 actually hard coded the
 original installation directory (the default on config/scratch/GSL). So
 moving things around
 ended up not being a good idea.

 The best way, in my opinion, to deal with this issue at the moment would
 be to let the user define
 the installation directory in its .cactus/config option file. So whenever
 we build the library
 the script also looks for GSL_INSTALL_DIR variable and if it finds it
 installs the library at
 that user specified directory, otherwise it installs in the default
 location at config/scratch/GSL.
 We would set something like this in the .cactus/config file:

 GSL_DIR = BUILD
 GSL_INSTALL_DIR = /home/me/local/gsl-1.14

 and after building and installation we would change to only

 GSL_DIR = /home/me/local/gsl-1.14

 in order to use it for most other configurations.

 I have a patch attached with a small change to GSL.sh script. I encourage
 you to give a look and
 express your opinion. My proposal doesn't change the default behaviour. It
 only adds an option
 for the user to specify the installation directory. The only drawback I
 can think of at the moment
 it is that you may forget which configuration was used to build the
 libraries. However, you could
 always name the directory accordingly and we could improve the script to
 make it dump a similar
 config-info file there as a reminder, if really necessary

 Anyway, I find annoying to have to rebuild libraries frequently and I hope
 my proposed solution to
 GSL.sh can be ported for the other library scripts as well and that it can
 be really a step forward
 on avoiding all this unnecessary and time consuming re-compilations.

-- 
Ticket URL: <https://trac.einsteintoolkit.org/ticket/136#comment:9>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit


More information about the Trac mailing list