As haosdent said, the default libnl-3 that comes with ubuntu is not new enough. It will cause the following check in configure.ac to fail:
AC_CHECK_LIB([nl-3], [nl_has_capability], ... because the default ubuntu version does not contain the function nl_has_capability. You need to install the version from: https://github.com/thom311/libnl/releases/tag/libnl3_2_27 and then run through the instructions that Guangya linked to: https://github.com/apache/mesos/blob/master/docs/network-monitoring.md#prerequisites On Tue, Mar 22, 2016 at 6:36 AM, Guangya Liu <[email protected]> wrote: > I did try this feature before, and you may want to follow here > https://github.com/apache/mesos/blob/master/docs/network-monitoring.md#prerequisites > to install the right version prerequisites first. > > On Tue, Mar 22, 2016 at 9:21 PM, Jay Guo <[email protected]> wrote: > >> Hi, >> >> I got error trying to compile Mesos >> on Ubuntu >> with CFLAG WITH_NETWORK_ISOLATOR >> >> Here's what I did: >> 1. apt-get install libnl-dev >> 2. ./bootstrap >> 3. mkdir build && cd build >> 4. CXXFLAGS=-DWITH_NETWORK_ISOLATOR ../configure --disable-java >> --disable-python >> 5. make check >> >> Although I got following error: >> >> In file included from ../../src/linux/routing/filter/ip.hpp:35:0, >> from >> ../../src/slave/containerizer/mesos/isolators/network/port_mapping.hpp:44, >> from >> ../../src/slave/containerizer/mesos/containerizer.cpp:82: >> ../../src/linux/routing/handle.hpp:92:39: error: ‘TC_H_ROOT’ was not >> declared in this scope >> constexpr Handle EGRESS_ROOT = Handle(TC_H_ROOT); >> ^ >> ../../src/linux/routing/handle.hpp:93:40: error: ‘TC_H_INGRESS’ was not >> declared in this scope >> constexpr Handle INGRESS_ROOT = Handle(TC_H_INGRESS); >> >> Any ideas? >> >> Also, does this work with OSX? Is there any equivalent library as libnl? >> >> Cheers, >> /J >> -- ~Kevin
