<div dir="ltr"><div dir="ltr">On Thu, Aug 24, 2023 at 6:10 AM maitri ksh <<a href="mailto:maitri.ksh@gmail.com">maitri.ksh@gmail.com</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">I was facing a problem while compiling a code (which earlier, got compiled successfully using the same petsc set up), the problem was related to compilers. I decided to reconfigure petsc but ran into errors which are related to non-compliance of the compiler with  'C++11'. I had faced this issue earlier when I was installing Petsc and I had it resolved by using a newer version of compiler (openmpi-4.1.5).</div></blockquote><div><br></div><div>OpenMPI is not a compiler. It is an implementation of MPI that produces compiler wrappers. Your actual compiler appears to be GCC 4.8.2:</div><div><br></div><div>              Output from compiling with  -std=c++11<br>In file included from /usr/include/c++/4.8.2/algorithm:62:0,<br>                 from /tmp/petsc-hl_0r720/config.setCompilers/conftest.cc:9:<br>/usr/include/c++/4.8.2/bits/stl_algo.h: In instantiation of ‘_RandomAccessIterator std::__unguarded_partition(_RandomAccessIterator, _RandomAccessIterator, const _Tp&, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<std::unique_ptr<double>*, std::vector<std::unique_ptr<double> > >; _Tp = std::unique_ptr<double>; _Compare = main()::__lambda0]’:<br>/usr/include/c++/4.8.2/bits/stl_algo.h:2296:78:   required from ‘_RandomAccessIterator std::__unguarded_partition_pivot(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<std::unique_ptr<double>*, std::vector<std::unique_ptr<double> > >; _Compare = main()::__lambda0]’<br>/usr/include/c++/4.8.2/bits/stl_algo.h:2337:62:   required from ‘void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<std::unique_ptr<double>*, std::vector<std::unique_ptr<double> > >; _Size = long int; _Compare = main()::__lambda0]’<br>/usr/include/c++/4.8.2/bits/stl_algo.h:5499:44:   required from ‘void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<std::unique_ptr<double>*, std::vector<std::unique_ptr<double> > >; _Compare = main()::__lambda0]’<br>/tmp/petsc-hl_0r720/config.setCompilers/conftest.cc:58:119:   required from here<br>/usr/include/c++/4.8.2/bits/stl_algo.h:2263:35: error: no match for call to ‘(main()::__lambda0) (std::unique_ptr<double>&, const std::unique_ptr<double>&)’<br>    while (__comp(*__first, __pivot))<br>                                   ^<br>/tmp/petsc-hl_0r720/config.setCompilers/conftest.cc:58:42: note: candidates are:<br> std::sort(vector.begin(), vector.end(), [](std::unique_ptr<double> &a, std::unique_ptr<double> &b) { return *a < *b; });<br>                                          ^<br>In file included from /usr/include/c++/4.8.2/algorithm:62:0,<br>                 from /tmp/petsc-hl_0r720/config.setCompilers/conftest.cc:9:<br>/usr/include/c++/4.8.2/bits/stl_algo.h:2263:35: note: bool (*)(std::unique_ptr<double>&, std::unique_ptr<double>&) <conversion><br>    while (__comp(*__first, __pivot))<br></div><div><br></div><div>This compiler was released almost 10 years ago and has incomplete support for C++11.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"> Now, I am trying to use the same compiler (openmpi-4.1.5) to reconfigure petsc but the old issue (related to 'C++11') pops up. I used a code that was available <a href="https://stackoverflow.com/questions/5047971/how-do-i-check-for-c11-support" target="_blank">online</a> to check if the present compiler supports C++11, and it shows it does support. </div></blockquote><div><br></div><div>You may not have read to the bottom of the answer, but it tells you how to check for complete support for C++11 and this compiler definitely does not have it.</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>I have attached the '<b>configure.log</b>' herewith for your reference.<br><div>Can anyone suggest how to resolve/work-around this issue?</div></div></div>
</blockquote></div><br clear="all"><div><br></div><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div><div><br></div><div><a href="http://www.cse.buffalo.edu/~knepley/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div></div></div>