375 字 | 1 分钟
Build and run
requirements
- g++ (required by c++17, version >= 5.5)
- cmake (version >= 2.8.0)
GCC5.5.0 安装
- 安装
wget https://ftp.gnu.org/gnu/gcc/gcc-5.5.0/gcc-5.5.0.tar.gz 下载软件
tar -zxvf gcc-5.5.0.tar.gz
cd gcc-5.5.0
./contrib/download_prerequisites // 下载mpfr,gmp,mpc 所需环境
mkdir build
cd build
../configure --prefix=/usr/local/gcc-5.5.0/ -enable-checking=release -enable-languages=c,c++ -disable-multilib
make
make install
- 设置环境变量 或者
~/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/gcc-5.5.0/bin
export CC=/usr/local/gcc-5.5.0/bin/gcc
export CXX=/usr/local/gcc-5.5.0/bin/g++
export LD_LIBRARY_PATH=/usr/local/gcc-5.5.0/lib64:/usr/local/lib:$LD_LIBRARY_PATH
- 配置libstdc++.so.6 在 gcc 编译目录下找到最新的
libstdc++.so
,拷贝至/usr/lib64/,运行命令ldconfig
cp ./x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.21 /usr/lib64/
ldconfig
Build
$ git clone https://github.com/Tencent/Tendis.git --recursive
$ git submodule update --init --recursive
$ mkdir bulid
$ cd build & cmake ..
$ make -j12
cmake参数
编译release版
cmake ..
编译debug版,通常可以得到更多的日志,但性能较差。如果跑单元测试,建议打开。
# 开启debug模式编译
cmake .. -DTENDIS_DEBUG=ON
run
$ ./build/bin/tendisplus tendisplus.conf
TEST
$ sh ./testall.sh
测试包含基于gtest的单元测试以及redis原生tclsh测试 GTest Tendis存储版
的单元测试基于
gtest, 如果想运行某一个测试,可以使用 —gtest_filter=Command.*, 比如:
./build/bin/command_test --gtest_filter=Command.RenameCommandTTL
Redis 原生测试 另外
Tendis存储版
也引入 Redis 原生的 tcl 测试。sh ./redistest.sh