Hi!

The easyblock does not pull in any build dependencies, so unless specified you 
do not have any other tools than the ones that may happen to be installed on 
your system.


Please note that (GNU) Make and Automake are two completely different pieces of 
software. In EasyBuild there's an Autotools bundle of Autoconf and Automake. 
Make is typically provided by your operating system packages.


You should probably pull in a build dependency like `('Autotools', 
'20200321'),` to have a good Autotools installation available.


A common pattern in existing easyconfigs is to use `preconfigopts` to inject 
things to run before the configure command, like:


  preconfigopts = 'make && '


With kind regards,

Lars

________________________________
From: [email protected] <[email protected]> on 
behalf of Loris Bennett <[email protected]>
Sent: Monday, March 15, 2021 11:34:59 AM
To: easybuild
Subject: [easybuild] 'make' required before 'configure/make'

Hi,

I'm looking the installation instructions for Macaulay2

  https://github.com/Macaulay2/M2/blob/release-1.17/M2/INSTALL

in which is says

  Begin with this command:

          make

  The "make" command above runs the commands "autoconf" and "autoheader", which
  create the "configure" script and the "include/config.h.in" file, needed in 
the
  next steps.  Once those files are created, it is not necessary to make them
  again.  The "make" command on your system should be a recent version of GNU
  make.

  Now continue building the program this way:

          ./configure --enable-download --prefix=/foo/bar
          make
          make check                      # optional
          make install


My naive approach was use

  easyblock = 'ConfigureMake'

with

  configure_cmd = 'make && ./configure'

but this results in the error

  error: the automake program installed on your system (automake is 
/usr/bin/automake) is too old.

  Please install or update automake: the version (1.13.4) should be at least 
1.16.
  make[2]: Entering directory 
`/trinity/shared/easybuild/build/Macaulay2/1.17/foss-2020b/M2-release-1.17/M2'

So it seems that the system 'make' is being used rather than the one
from the EB toolchain.

How should I deal with this pre-configure 'make'?

Cheers,

Loris

--
Dr. Loris Bennett (Hr./Mr.)
ZEDAT, Freie Universität Berlin         Email [email protected]

Reply via email to