[Users] Compilation Error in cluster ParamGanga

Shamim Haque 1910511 shamims at iiserb.ac.in
Fri May 19 04:02:29 CDT 2023


Hello Roland,

Thank you for the reply. Yes, I am trying to compile ETK in the computing
node via sbatch queue. I am in touch with the system admin to resolve
the issue with the compilers.

Regards
Shamim Haque
Senior Research Fellow (SRF)
Department of Physics
IISER Bhopal

ᐧ

On Thu, May 18, 2023 at 7:32 PM Roland Haas <rhaas at illinois.edu> wrote:

> Hello Shamin,
>
> A missing math.h would point to a faulty compiler installation. Since
> you are trying to compile (are you?) ona compute node in a running job,
> my guess would be that the cluster admins are not providing compilers
> on the compute nodes but only on the login nodes.
>
> This would be something to contact your cluster's help desk about.
>
> Yours,
> Roland
>
> > Hello Roland,
> >
> > I did try that fix; the error remains the same. Actually, we landed on an
> > even more primitive problem, where Steve suggested a basic test, that is
> to
> > compile the following code:
> >
> >
> >
> >
> >
> >
> >
> > *#include <math.h>#include <stdio.h>int main() {    printf("%f\n",
> > M_PI);    return 0;}*
> >
> > This program compiles just fine in the login node but gives out the
> > following error while compiling it via jobscript submission in the sbatch
> > queue:
> >
> > prog.cpp:1:18: fatal error: math.h: No such file or directory
> >  #include <math.h>
> >                   ^
> > compilation terminated.
> >
> > ----OR-----
> >
> >
> /home/apps/gcc-10.2.0/include/c++/10.2.0/x86_64-pc-linux-gnu/bits/os_defines.h:39:10:
> > fatal error: features.h: No such file or directory
> >    39 | #include <features.h>
> >       |          ^~~~~~~~~~~~
> > compilation terminated.
> >
> > I have reported this problem to the HPC admin and await their response.
> >
> > Regards
> > Shamim Haque
> > Senior Research Fellow (SRF)
> > Department of Physics
> > IISER Bhopal
> >
> > ᐧ
> >
> > On Fri, May 12, 2023 at 12:20 AM Roland Haas <rhaas at illinois.edu> wrote:
> >
> > > Hello all,
> > >
> > > Since the error is a missing M_PI and the configure script already
> > > gives a suggested fix:
> > >
> > > Try adding -D_XOPEN_SOURCE to CPPFLAGS.
> > >
> > > have you tried adding:
> > >
> > > CPPFLAGS=-D_XOPEN_SOURCE
> > >
> > > to your option list file before compiling?
> > >
> > > Yours,
> > > Roland
> > >
> > > > Thanks Steve. I have raised complaint to the admin about this issue.
> > > >
> > > > On Thu, May 11, 2023, 11:18 PM Steven R. Brandt <sbrandt at cct.lsu.edu>
>
> > > wrote:
> > > >
> > > > > I would talk to the system administrators about that. There is
> > > definitely
> > > > > something wrong with your compiler install if you can't find
> math.h.
> > > > >
> > > > > --Steve
> > > > > On 5/11/2023 2:02 AM, Shamim Haque 1910511 wrote:
> > > > >
> > > > > Dear Steve,
> > > > >
> > > > > I just rechecked the cpp program to output M_PI in the computing
> nodes,
> > > > > and that is not working right now, which was somehow working fine
> a few
> > > > > days ago. I also tried different gcc versions (4.8, 10.2, 11.1,
> > > gnu8/8.3)
> > > > > available in the cluster. All report similar issue:
> > > > >
> > > > > prog.cpp:1:18: fatal error: math.h: No such file or directory
> > > > >  #include <math.h>
> > > > >                   ^
> > > > > compilation terminated.
> > > > >
> > > > > ----OR-----
> > > > >
> > > > >
> > >
> /home/apps/gcc-10.2.0/include/c++/10.2.0/x86_64-pc-linux-gnu/bits/os_defines.h:39:10:
>
> > > > > fatal error: features.h: No such file or directory
> > > > >    39 | #include <features.h>
> > > > >       |          ^~~~~~~~~~~~
> > > > > compilation terminated.
> > > > >
> > > > > The cpp code seems to work fine in login node, as it gives out
> the
> > > value
> > > > > of pi upon execution. I am contacting the hpc admin to resolve
> this
> > > issue.
> > > > >
> > > > > I am attaching the test code (prog.cpp), the sbatch jobscript
> (prog.sh)
> > > > > and the output file (slurn-117473.out), if you would like to have
> a
> > > look at
> > > > > it.
> > > > >
> > > > > Please let me know if I should try something different to get
> this
> > > working.
> > > > >
> > > > > Regards
> > > > > Shamim Haque
> > > > > Senior Research Fellow (SRF)
> > > > > Department of Physics
> > > > > IISER Bhopal
> > > > >
> > > > > ᐧ
> > > > >
> > > > > On Mon, May 8, 2023 at 7:25 PM Shamim Haque 1910511 <
> > > shamims at iiserb.ac.in>
> > > > > wrote:
> > > > >
> > > > >> Thanks Steve. I'll make the changes and try again. I'll let you
> know
> > > the
> > > > >> outcome.
> > > > >>
> > > > >> Regards
> > > > >> Shamim Haque
> > > > >> Senior Research Fellow (SRF)
> > > > >> Department of Physics
> > > > >> IISER Bhopal
> > > > >>
> > > > >> ᐧ
> > > > >>
> > > > >> On Mon, May 8, 2023 at 7:21 PM Steven R. Brandt <
> sbrandt at cct.lsu.edu>
> > > > >> wrote:
> > > > >>
> > > > >>> That tends to make me think you aren't using the compiler you
> think
> > > > >>> you're using. You could put full paths in the .cfg files and
> > > recompile from
> > > > >>> scratch.
> > > > >>>
> > > > >>> i.e.
> > > > >>>
> > > > >>> CXX = /full/path/to/icc
> > > > >>>
> > > > >>> --Steve
> > > > >>> On 5/3/2023 3:26 PM, Shamim Haque 1910511 wrote:
> > > > >>>
> > > > >>> Yes, this gives the value of Pi successfully, before starting the
> > > > >>> compilation:
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>> */home/vkerni.iitr/sam/trial 3.141593 Current machine:
> paramganga3
> > > Using
> > > > >>> configuration: sim Reconfiguring sim Writing configuration to:
> > > > >>> /home/vkerni.iitr/sam/ET_debug/Cactus/configs/sim/OptionList
> Cactus -
> > > > >>> version: 4.12.0 Reconfiguring sim. *
> > > > >>> *.*
> > > > >>> *.*
> > > > >>> *.*
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>> *checking for M_PI... no configure: error: M_PI not defined.
> Try
> > > adding
> > > > >>> -D_XOPEN_SOURCE to CPPFLAGS. Error reconfiguring sim-config
> make: ***
> > > > >>> [sim-config] Error 2 *
> > > > >>>
> > > > >>>
> > > > >>> Shamim Haque
> > > > >>> Senior Research Fellow (SRF)
> > > > >>> Department of Physics
> > > > >>> IISER Bhopal
> > > > >>>
> > > > >>> ᐧ
> > > > >>>
> > > > >>> On Thu, May 4, 2023 at 12:29 AM Steven Brandt <
> sbrandt at cct.lsu.edu>
> > > > >>> wrote:
> > > > >>>
> > > > >>>> So, sanity check, can you compile the following program outside
> of
> > > > >>>> Cactus?
> > > > >>>>
> > > > >>>> #include <math.h>
> > > > >>>> #include <stdio.h>
> > > > >>>>
> > > > >>>> int main() {
> > > > >>>>     printf("%f\n", M_PI);
> > > > >>>>     return 0;
> > > > >>>> }
> > > > >>>> On 5/3/2023 1:50 PM, Shamim Haque 1910511 wrote:
> > > > >>>>
> > > > >>>> Dear Steve,
> > > > >>>>
> > > > >>>> I tried gcc (10 and 11) as well and I am stuck with the
> following
> > > error:
> > > > >>>> *configure: error: M_PI not defined. Try adding -D_XOPEN_SOURCE
> to
> > > > >>>> CPPFLAGS.*
> > > > >>>>
> > > > >>>> This also happened for Intel (2020 and 2019). I have attached
> both
> > > the
> > > > >>>> output files here.
> > > > >>>>
> > > > >>>> Please ignore the out file in the first email, I have uploaded
> > > another
> > > > >>>> out file by mistake. The rest of the files are correct in the
> first
> > > mail.
> > > > >>>>
> > > > >>>> Regards
> > > > >>>> Shamim Haque
> > > > >>>> Senior Research Fellow (SRF)
> > > > >>>> Department of Physics
> > > > >>>> IISER Bhopal
> > > > >>>>
> > > > >>>> ᐧ
> > > > >>>>
> > > > >>>> On Wed, May 3, 2023 at 8:04 PM Steven Brandt <
> sbrandt at cct.lsu.edu>
> > > > >>>> wrote:
> > > > >>>>
> > > > >>>>> I notice from the output that your compiler claims "limits.h"
> is
> > > > >>>>> missing. Possibly there's something wrong with your icc
> setup?
> > > Maybe you
> > > > >>>>> should try using gcc / gfortran instead.
> > > > >>>>>
> > > > >>>>> --Steve
> > > > >>>>> On 5/3/2023 8:20 AM, Shamim Haque 1910511 wrote:
> > > > >>>>>
> > > > >>>>> Dear Frank,
> > > > >>>>>
> > > > >>>>> I added the alias pattern for the computing nodes and now ETK
> can
> > > > >>>>> detect the cluster (checked by asking "whoami") during the
> batch
> > > queuing.
> > > > >>>>> I'll get in touch with the admins to include 'patch'.
> > > > >>>>>
> > > > >>>>> However, the problem still persists, having assured that the
> > > correct
> > > > >>>>> machine file and option list are being used during the
> compilation.
> > > > >>>>>
> > > > >>>>> Regards
> > > > >>>>> Shamim Haque
> > > > >>>>> Senior Research Fellow (SRF)
> > > > >>>>> Department of Physics
> > > > >>>>> IISER Bhopal
> > > > >>>>>
> > > > >>>>> ᐧ
> > > > >>>>>
> > > > >>>>> On Wed, May 3, 2023 at 3:49 PM Frank Loeffler <
> > > > >>>>> frank.loeffler at uni-jena.de> wrote:
> > > > >>>>>
> > > > >>>>>> Hi Shamim
> > > > >>>>>>
> > > > >>>>>> On Wed, May 03, 2023 at 03:11:49PM +0530, Shamim Haque
> 1910511
> > > wrote:
> > > > >>>>>> >We are trying to compile ETK on ParamGanga at IIT Roorkee.
> The
> > > > >>>>>> >compilation
> > > > >>>>>> >stops at a very initial step and gives out the error:
> > > > >>>>>> >
> > > > >>>>>> >*checking whether the Fortran compiler (gfortran  )
> works...
> > > > >>>>>> yeschecking
> > > > >>>>>> >whether the Fortran compiler (gfortran  ) is a
> > > cross-compiler...
> > > > >>>>>> nochecking
> > > > >>>>>> >whether the Fortran compiler (gfortran  ) supports TYPE(*)
> for
> > > > >>>>>> >CCTK_PointerTo... yeschecking how to run the C
> preprocessor...
> > > > >>>>>> cppchecking
> > > > >>>>>> >for ANSI C header files... nochecking for C99 features...
> > > > >>>>>> yeschecking for
> > > > >>>>>> >M_PI... noconfigure: error: M_PI not defined. Try adding
> > > > >>>>>> -D_XOPEN_SOURCE to
> > > > >>>>>> >CPPFLAGS.*
> > > > >>>>>> >
> > > > >>>>>> >We tried adding -D_XOPEN_SOURCE to CPPFLAGS, but it does
> not
> > > help.
> > > > >>>>>> This
> > > > >>>>>> >error is consistent if we set up using Intel Compiler (2020
> or
> > > > >>>>>> 2019), or
> > > > >>>>>> >gcc (11 or 10). I have attached the outfile, error file,
> > > machine
> > > > >>>>>> script,
> > > > >>>>>> >and option lists for both cases (Intel and gcc) for any
> > > reference.
> > > > >>>>>> >
> > > > >>>>>> >Secondly, we are not allowed to compile ETK on login nodes.
> So
> > > we are
> > > > >>>>>> >queuing a job script, which upon execution, enters the
> Cactus
> > > > >>>>>> directory,
> > > > >>>>>> >does "setup-silent", and then executes the build command.
> Is
> > > this
> > > > >>>>>> the right
> > > > >>>>>> >way to compile ETK using the batch script? Or should we do
> > > something
> > > > >>>>>> >different? I have attached the shell script (compile.sh)
> used
> > > for
> > > > >>>>>> sbatch
> > > > >>>>>> >queue for reference.
> > > > >>>>>>
> > > > >>>>>> I might be wrong, but setup-silent will not use your machine
> file
> > > > >>>>>> which
> > > > >>>>>> contains all the compiler flags, but will setup something
> "from
> > > > >>>>>> scratch"
> > > > >>>>>> instead. According to the logs, this will be, e.g., in
> > > > >>>>>>
> > > > >>>>>>
> > > > >>>>>>
> > >
> /home/shamims.iiserb/ET_debug/Cactus/repos/simfactory2/mdb/machines/cn139.iitr.ac.in.ini
>
> > > > >>>>>>
> > > > >>>>>> My guess would be that this misses the compiler flags
> necessary to
> > > > >>>>>> have
> > > > >>>>>> M_PI defined. The best way to get this working might be to let
> > > > >>>>>> simfactory also detect the cluster configuration on the
> compute
> > > nodes
> > > > >>>>>> (where you compile), such that setup-silent is not needed, but
> > > > >>>>>> instead
> > > > >>>>>> the correct cluster configuration is found and used
> > > automatically. In
> > > > >>>>>> order to do that, look at examples of 'aliaspattern' in the
> > > > >>>>>> mdb/machines
> > > > >>>>>> directory. An alternative would be to tell simfactory
> specifically
> > > > >>>>>> that
> > > > >>>>>> you want to use your machine configuration file.
> > > > >>>>>>
> > > > >>>>>> As a side-note: I noticed the command 'patch' is missing
> too.
> > > This is
> > > > >>>>>> a
> > > > >>>>>> tool so common that it should be installed everywhere. Your
> admin
> > > is
> > > > >>>>>> probably the best person to ask for advise here. It should
> not be
> > > too
> > > > >>>>>> hard to install yourself, but that should not be necessary
> either,
> > > > >>>>>> especially when you are told to compile on compute nodes.
> > > > >>>>>>
> > > > >>>>>> Frank
> > > > >>>>>>
> > > > >>>>>>
> > > > >>>>> _______________________________________________
> > > > >>>>> Users mailing listUsers at einsteintoolkit.orghttp://
> > > lists.einsteintoolkit.org/mailman/listinfo/users
> > > > >>>>>
> > > > >>>>> _______________________________________________
> > > > >>>>> Users mailing list
> > > > >>>>> Users at einsteintoolkit.org
> > > > >>>>>
> > >
> https://urldefense.com/v3/__http://lists.einsteintoolkit.org/mailman/listinfo/users__;!!DZ3fjg!4xAKSrBYUo_v8jHEbenNg6aQ99Oq9QyeXsjq766lVDVwHAhFJODYjSU6XryKp264bQqDmBcTIA4Srkc4wOCn$
>
> > > > >>>>>
> > > > >>>>
> > >
> > >
> > > Yours,
> > > Roland
> > >
> > > --
> > > My email is as private as my paper mail. I therefore support encrypting
> > > and signing email messages. Get my PGP key from
> https://urldefense.com/v3/__http://pgp.mit.edu__;!!DZ3fjg!5ZGhPGL_16Uj1eN8xbeLFN1po4t2MOETlRoEnO3fr4pBXNdsn_VXBbuywp1tgk0zKYy_oBKphC1Ny-KY0Vh9$
> .
> > >
>
> --
> My email is as private as my paper mail. I therefore support encrypting
> and signing email messages. Get my PGP key from http://pgp.mit.edu .
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.einsteintoolkit.org/pipermail/users/attachments/20230519/b89963e0/attachment-0001.htm>


More information about the Users mailing list