Hi all,

I found the third party libprocess in mesos-0.17.0.tar.gz missed some
header files for c++11 supports. The problem is that Mesos seems not to use
--with-cxx11 in the configure script, but the macro (__cplusplus >=
201103L, in defer.hpp, deferred.hpp, delay.hpp, dispatch.hpp, and
executor.hpp under 3rdparty/libprocess/include/process) to detect c++11
features.

Therefore, ANY machines with the default CXX compiler supporting c++11,
when building from 0.17 src tarball, would have the following build errors,
no matter whether one specifies --with-cxx11:

In file included from ../../../3rdparty/libprocess/src/statistics.cpp:10:

../../../3rdparty/libprocess/include/process/delay.hpp:2:10: fatal error:
'process/c++11/delay.hpp' file not found

#include <process/c++11/delay.hpp>

        ^

In file included from ../../../3rdparty/libprocess/src/process.cpp:46:

../../../3rdparty/libprocess/include/process/defer.hpp:2:10: fatal error:
'process/c++11/defer.hpp' file not found
#include <process/c++11/defer.hpp>


I quickly fixed this problem by copying the directory
3rdparty/libprocess/include/process/c++
from the Mesos git repo. But I think a better solutions would use
--with-cxx11 to trigger the C++11 supports. Thank you!

Best,
Zuyu Zhang

Reply via email to