Проблема с компиляцией Rocksdb после обновления MacosC++

Программы на C++. Форум разработчиков
Anonymous
Проблема с компиляцией Rocksdb после обновления Macos

Сообщение Anonymous »

Я обновил свой MacOS до последней версии, и с тех пор при компиляции Rocksdb-5.8 я столкнулся с описанной ниже проблемой

Код: Выделить всё

error: no matching constructor for initialization of 'std::lock_guard'
Код:

Код: Выделить всё

size_t size() const {
std::lock_guard lk(lock_);
return buffer_.size();
}
Версия MacOS: 14.4.1
Версия Clang: 15.0.0
Я пробовал загрузить llvm@ 13 с помощью Brew и компиляции, но это не сработало, хотя раньше оно компилировалось с предыдущей версией MacOS, поэтому я хочу знать, в чем может быть причина, вызывающая это. Я даже пытался изменить -isysroot, установив LDFLAGS и CPPFLAGS (которые предложил Brew).
PS: Я знаю, что RocksDB-5.8 устарел, но мы именно его используем на работе. Я также знаю исправление кода для этого (удаление const), но я хочу знать, почему эта ошибка возникает при обновлении ОС даже после того, как я попробовал использовать более старую версию Clang.

Подробнее здесь: https://stackoverflow.com/questions/784 ... ding-macos

Вернуться в «C++»