link time errors about builtin_isinf on bethe

Create issue
Issue #1246 closed
Roland Haas created an issue

I get link time errors about missing builtin functions on bethe using the current ET thornlist and a option list with options to disable OMP collapse.

This happens with current trunk.

If I remember correctly I can circumvent the problem with careful choices for '-Disinf=std::isinf' etc. However this seems like a fudge and dangerous given the amount of work put into getting isnan to work in Cactus recently.

Is there a "correct" way to fix this?

I attach the make output, options list, thorn list and a list of all thorn revisions.


Comments (4)

  1. Erik Schnetter
    • removed comment

    To my knowledge, the "correct" way to correct this is to install the Intel compiler on a system that has the necessary prerequisites, i.e. a particular version of GCC, or a particular version of Red Hat, etc.

    I use work-arounds such as


    This seems harmless since the compiler will see this definition, hence will still be able to generate optimised code. Also, autoconf will see this and thus let Cactus provide a working implementation.

    The implementation in Cactus puts its known-to-be-good functions into a separate namespace (either with a cctk_ prefix or into a namespace cctk) so that there should be no conflicts.

  2. Roland Haas reporter
    • changed status to open
    • assigned issue to
    • removed comment

    Thank you. I will use the workaround for now and check and see if the correct compiler can be installed on bethe (it was recently re-installed from scratch).

  3. Roland Haas reporter
    • changed status to resolved
    • removed comment

    Erik updated bethe.cfg with the workaround and required flag to disable OMP collapse.

  4. Log in to comment