鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

编译RocksDB过程中提示Cannot allocate memory的解决方法

问题现象描述

编译RocksDB过程中提示“Cannot allocate memory”。

关键过程、根本原因分析

执行make -j编译RocksDB时,会使用所有CPU核数,导致内存不够。

结论、解决方案及效果

  1. 删除当前目录下的所有文件和子目录。
    rm -rf *
  2. 使用CMake工具编译安装RocksDB数据库,并指定安装路径为“/usr/local/rocksdb”,该路径可根据实际情况修改。
    cmake -DCMAKE_INSTALL_PREFIX=/usr/local/rocksdb -DWITH_SNAPPY=1 -DWITH_ZLIB=1 -DWITH_LZ4=1 -DWITH_ZSTD=1 -DWITH_BZ2=1 ..
  3. 查看CPU核数。
    lscpu
  4. 再次执行编译命令,同时减少CPU核数。
    make -j 8