redisデータベースにアクセスするためのC言語
- Hiredisライブラリ
Centos7または8を準備しますhiredis
-0.11.0.tar.gzyum
install redis - Hiredisライブラリをインストールします
。Hiredis圧縮パッケージを解凍します
。tar-zcvfhiredis-0.11.0.tar.gz。
/ Hiredisルートディレクトリで
make && makeinstallを実行します。 - ダイナミックライブラリリンクを編集
するディレクトリを作成し、ファイルをディレクトリ
mkdir / usr / lib / hiredis
cp libhiredis.so / usr / lib / hiredisにコピーします。#ダイナミックリンクライブラリlibhiredis.soを/ usr / lib / hiredis
mkdir / usr /にコピーします。include / Hiredis
cphiredis.h / usr / include / hiredis
方法1:
パス/ usr / local / libをファイル/etc/ld.so.confに直接追加します。ファイルの最後に直接追加します/etc/ld.so.conf:/ usr / local / lib
方法2:
echo '/ usr / local / lib' >> / etc / ld.so.conf
ldconfig
execute sudo / sbin / ldconfig次に、システムダイナミックライブラリの構成を更新します - テストソースコード
test.cとmakefileを同じディレクトリに書き込み、makeを実行すると、テスト実行可能ファイルがディレクトリに生成されます。 - テスト実行
./test
1234の印刷するには、コンソールを
表示するのRedis-CLIを
メイクファイルfooのキー値とを
LIBDIR= -L/usr/local/lib
LIBSO = -lhiredis
CFLAG = -Wall -g
all:test
test:test.o
gcc ${CFLAG} -o $@ $< ${LIBDIR} ${LIBSO}
%.o%.c:
gcc -c -o $@ $^
clear:
rm -f *.o
test.cファイルのソースコード
#include <stdio.h>
#include <hiredis/hiredis.h>
int main()
{
redisContext* conn = redisConnect("127.0.0.1",6379);
if(conn->err) printf("connection error:%s\n",conn->errstr);
redisReply* reply = redisCommand(conn,"set foo 1234");
freeReplyObject(reply);
reply = redisCommand(conn,"get foo");
printf("%s\n",reply->str);
freeReplyObject(reply);
redisFree(conn);
return 0;
}
注:ダイナミックライブラリの引用が重要です。詳細なソースコードは、ブロガーに連絡することで入手できます。