facebook/CacheLib

make_unique was not declared when compiled

liuqinfei opened this issue · 1 comments

Describe the bug
make_unique in CacheLib/cachelib/navy/common/Device.cpp:904 was not declared when compiled.

To Reproduce
Steps to reproduce the behavior:

  1. adapted to support openEuler
  2. ./contrib/build-package.sh -i -j -d -S cachelib
  3. See error

Expected behavior
Compiled successfully.

Screenshots
/home/liuqinfei/develop/localdevelop/CacheLib/cachelib/navy/common/Device.cpp: In member function ‘facebook::cachelib::navy::{anonymous}::IoContext* facebook::cachelib::navy::{anonymous}::FileDevice::getIoContext()’:
/home/liuqinfei/develop/localdevelop/CacheLib/cachelib/navy/common/Device.cpp:904:19: error: ‘make_unique’ was not declared in this scope
904 | asyncBase = make_uniquefolly::IoUring(qDepthPerContext_, pollMode,

Desktop (please complete the following information):

  • OS: openEuler
  • Version : 22.03-LTS-SP1

Additional context
CacheLib: v2023.08.21.00

Hi @liuqinfei

Do you have an update on this? We do not manage the build for openEuler for now.

In the meantime, can you try to just include "#include " explicitly in Device.h? I am afraid there could be more c++ headers that need to be included, though.

Thanks.