Tencent / Tendis

Tendis is a high-performance distributed storage system fully compatible with the Redis protocol.
http://tendis.cn
Other
2.92k stars 319 forks source link

dev-2.2 编译安装失败 #170

Closed xiaosayishi closed 2 years ago

xiaosayishi commented 2 years ago

环境:centos7.9 gcc:7.3.0
错误信息: [ 94%] Building CXX object src/tendisplus/storage/rocks/CMakeFiles/rocks_kvstore_test.dir/rocks_kvstore_test.cpp.o /opt/test/tendis/src/tendisplus/utils/test_util.cpp: In function ‘std::shared_ptr tendisplus::makeServerEntryOld(const std::shared_ptr&)’: /opt/test/tendis/src/tendisplus/utils/test_util.cpp:243:57: error: no matching function for call to ‘tendisplus::RocksKVStore::RocksKVStore(const char [8], const std::shared_ptr&, std::nullptr_t, bool)’ new RocksKVStore(CATALOG_NAME, cfg, nullptr, false))), ^ In file included from /opt/test/tendis/src/tendisplus/server/server_entry.h:28:0, from /opt/test/tendis/src/tendisplus/utils/test_util.h:18, from /opt/test/tendis/src/tendisplus/utils/test_util.cpp:14: /opt/test/tendis/src/tendisplus/storage/rocks/rocks_kvstore.h:211:3: note: candidate: tendisplus::RocksKVStore::RocksKVStore(const string&, const std::shared_ptr&, std::shared_ptr, std::shared_ptr, bool, tendisplus::KVStore::StoreMode, tendisplus::RocksKVStore::TxnMode, uint32_t) RocksKVStore(const std::string& id, ^~~~ /opt/test/tendis/src/tendisplus/storage/rocks/rocks_kvstore.h:211:3: note: no known conversion for argument 4 from ‘bool’ to ‘std::shared_ptr’ make[2]: [src/tendisplus/utils/CMakeFiles/test_util.dir/test_util.cpp.o] Error 1 make[1]: [src/tendisplus/utils/CMakeFiles/test_util.dir/all] Error 2 make[1]: Waiting for unfinished jobs.... [ 94%] Linking CXX executable ../../../bin/tendisplus [ 95%] Linking CXX executable ../../../bin/skiplist_test [ 95%] Linking CXX executable ../../../bin/lock_test [ 95%] Linking CXX executable ../../../bin/server_params_test [ 95%] Built target tendisplus [ 95%] Built target skiplist_test [ 95%] Built target lock_test [ 95%] Built target server_params_test [ 95%] Linking CXX executable ../../../../bin/rocks_kvstore_test [ 95%] Built target rocks_kvstore_test make: [all] Error 2

请问各位大师,这个错误应该怎么处理,谢谢

jingjunLi commented 2 years ago

这里是 GCC 7.3 编译的时候的问题, 目前新版本已经修改, 暂时还未对外发布,待版本稍微稳定会发布到 GitHub。可以按照下面的方式修改:

image

xiaosayishi commented 2 years ago

好的,谢谢!