MAKE from source error: no class template named ‘rebind’ in ‘class MemoryTrackingAllocator

Hello, I am attempting to build Couchbase 6.0 from source (without any modifications) on Ubuntu 16.04 and I am getting the following error. I am downloading from git://github.com/couchbase/manifest -m branch-master.xml, is that the correct build url?

[ 57%] Building CXX object kv_engine/engines/ep/CMakeFiles/ep_objs.dir/src/checkpoint.cc.o
In file included from /usr/include/c++/5/list:63:0,
from /couchbase_source/kv_engine/engines/ep/src/ep_types.h:22,
from /couchbase_source/kv_engine/engines/ep/src/checkpoint.h:23,
from /couchbase_source/kv_engine/engines/ep/src/checkpoint.cc:26:
/usr/include/c++/5/bits/stl_list.h: In instantiation of ‘class std::__cxx11::_List_base<SingleThreadedRCPtr<Item, Item*, std::default_delete >, MemoryTrackingAllocator<SingleThreadedRCPtr<Item, Item*, std::default_delete > > >’:
/usr/include/c++/5/bits/stl_list.h:507:11: required from ‘class std::__cxx11::list<SingleThreadedRCPtr<Item, Item*, std::default_delete >, MemoryTrackingAllocator<SingleThreadedRCPtr<Item, Item*, std::default_delete > > >’
/couchbase_source/kv_engine/engines/ep/src/checkpoint_iterator.h:39:56: required from ‘class CheckpointIterator<std::__cxx11::list<SingleThreadedRCPtr<Item, Item*, std::default_delete >, MemoryTrackingAllocator<SingleThreadedRCPtr<Item, Item*, std::default_delete > > > >’
/couchbase_source/kv_engine/engines/ep/src/checkpoint.h:72:24: required from here
/usr/include/c++/5/bits/stl_list.h:315:9: error: no class template named ‘rebind’ in ‘class MemoryTrackingAllocator<SingleThreadedRCPtr<Item, Item*, std::default_delete > >’
_Node_alloc_type;

I am running G++ and GCC versions 5.4, but I am reading that I should be running version 7 according to https://github.com/couchbase/tlm that is probably the issue.

1 Like