1.安装hiredis
redis-4.0.9/deps/hiredis目录下
make
make install
可以看到库的流向:
mkdir -p /usr/local/include/hiredis /usr/local/lib
cp -a hiredis.h async.h read.h sds.h adapters /usr/local/include/hiredis
cp -a libhiredis.so /usr/local/lib/libhiredis.so.0.13
cd /usr/local/lib && ln -sf libhiredis.so.0.13 libhiredis.so
cp -a libhiredis.a /usr/local/lib
mkdir -p /usr/local/lib/pkgconfig
cp -a hiredis.pc /usr/local/lib/pkgconfig
2.运行
设置动态库路径:
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
一般正式环境设置在/etc/profile中
编译,增加了调试信息:
g++ -o hi hi.cpp -I/usr/local/include/ -lhiredis -g
代码:
#include <stdio.h>
#include <hiredis/hiredis.h>
main()
{
redisContext* conn;
redisReply *reply;
conn = redisConnect("127.0.0.1", 6379 );
if(conn->err){
printf("connection error: %s\n", conn->errstr);
//return -1;
}
reply = (redisReply *)redisCommand(conn, "auth redispass");
if( NULL == reply )
return -1;
printf("reply str is: %s\n", reply->str );
freeReplyObject(reply);
reply = (redisReply *)redisCommand(conn, "set city hangzhou");
if( NULL == reply )
return -1;
printf("reply str is: %s\n", reply->str );
freeReplyObject(reply);
reply = (redisReply *)redisCommand(conn, "get city");
if( NULL == reply )
return -1;
printf("reply str is: %s\n", reply->str );
freeReplyObject(reply);
redisFree(conn);
}