crayc++ and icpc vs g++
I was just on ARCHER again this afternoon, and I thought I’d
try recompiling dolfin
with the Intel or Cray compilers.
Unfortunately, neither of them are very c++11 compliant.
So, for icpc, lots of complaints about std::unique_ptr
etc.
rc/dolfin-1.4.0/dolfin/adaptivity/ErrorControl.cpp(479): error: namespace "std" has no member "unique_ptr"
std::unique_ptr<DirichletBC> e_bc;
^
Well, this has now been fixed in icpc 14.0.2, apparently, so I’ll just have to
wait for that to appear on ARCHER, I guess. It is already on Darwin, so we can test Intel there…
The situation with crayc++ is considerably further behind the curve…
CC-135 crayc++: ERROR File =
rc/dolfin-1.4.0/dolfin/common/NoDeleter.h, Line = 42
The namespace "std" has no member "shared_ptr".
std::shared_ptr<T> reference_to_no_delete_pointer(T& r)
^
Someone from Cray once told me not to bother with crayc++,
it is always playing catch-up…
Written with StackEdit.
I had the same issue with intel 13 and gcc4.3. I asked to the sysadmin support for intel 14 but still waiting. See here https://bitbucket.org/fenics-project/dolfin/issue/229/test-c-11-builds.
ReplyDeleteWith gcc-4.6 I hit on this bug https://lists.debian.org/debian-gcc/2011/07/msg00055.html
C++11 can be nice for programmers but very annoying for installers on HPC platforms, where one cannot select the dolfin favorite compiler!
If you get Intel 14, you need to have version 14.0.2 or later.
Delete14.0.1 is still not quite fully c++11 compliant.