Hi,

There was a somewhat recent discussion about this issue on #2565 and #2827,
but as far as I know, it was never satisfactorily resolved at that time,
otherwise the update would presumably have made it into 1.6.1.

Jahrul, just to confirm, are you saying that libmesh master works for you
with Intel 18 (or newer) compilers? Also, if I understand correctly, you
had to update PETSc as well? Can you let us know what version of PETSc you
used?

--
John


On Sun, Apr 4, 2021 at 11:54 AM Jahrul Alam <al...@mun.ca> wrote:

> I have a similar error with 1.6.1.tar.gz. Using git, I get 1.7.0_pre, and
> following is the error. Now, I have done a fresh installation of latest
> PETSc, configured libmesh using
> --with-cxx=/path/to/petsc/arch-linux-c-debug/bin/mpicxx, everything else is
> as before, libmesh compiled smoothly with no error.
>
>
>  CXX      src/base/libmesh_opt_la-dirichlet_boundary.lo
> In file included from ./include/libmesh/fe_base.h(26),
>                  from ./include/libmesh/fem_context.h(27),
>                  from ./include/libmesh/fem_function_base.h(26),
>                  from ./include/libmesh/composite_fem_function.h(23),
>                  from ../src/base/dirichlet_boundary.C(25):
> ./include/libmesh/fe_abstract.h(491): error: more than one operator "+"
> matches these operands:
>             built-in operator "arithmetic + arithmetic"
>             function "operator+(const PetscInt={int} &, const PetscComplex
> &)"
>             operand types are: const libMesh::OrderWrapper + const unsigned
> int
>     Order get_order()  const { return static_cast<Order>(fe_type.order +
> _p_level); }
>                                                                        ^
>
> make[1]: *** [Makefile:25279:
> src/base/libmesh_opt_la-dirichlet_boundary.lo] Error 1
>
>
>
>
> =====================================
> Jahrul Alam, PhD
> Memorial University, St John's, NL, Canada
> http://www.math.mun.ca/~alamj/
> eMail: al...@mun.ca
> Office: HH-3054, Tel: 709-864 8071
> =====================================
>
>
> On Sun, Apr 4, 2021 at 12:15 PM Charles Puelz <charles.pu...@gmail.com>
> wrote:
>
> > I am having an issue building 1.6.1 on TACC with the intel compilers
> > (18.0.2)
> >
> > I am getting this error:
> >
> > ./include/libmesh/fe_abstract.h(443): error: more than one operator "+"
> > matches these operands:
> >             built-in operator "arithmetic + arithmetic"
> >             function "operator+(const PetscInt={int} &, const
> PetscComplex
> > &)"
> >             operand types are: const libMesh::OrderWrapper + const
> unsigned
> > int
> >     Order get_order()  const { return static_cast<Order>(fe_type.order +
> > _p_level); }
> >
> > I've attached my configure log file.  Any thoughts?
> >
> > Thanks!
> >
> > -- Charles
>
>

_______________________________________________
Libmesh-users mailing list
Libmesh-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to