Webdis on Fedora
February 1, 2013
I have a fedora machine that has redis installed, and I wanted to install webdis. The instructions for webdis are:
- get source
- run
make
- ./webdis &
This didn't work for me:
[drumcoder@drumcoder webdis]$ make cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o webdis.o webdis.c In file included from webdis.c:1:0: server.h:4:19: fatal error: event.h: No such file or directory compilation terminated. make: *** [webdis.o] Error 1
Turns out I needed to install libevent-devel:
[root@drumcoder webdis]# yum install libevent-devel Loaded plugins: langpacks, presto, refresh-packagekit Adding en_US to language list Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package libevent-devel.x86_64 0:1.4.14b-1.fc14 set to be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: libevent-devel x86_64 1.4.14b-1.fc14 fedora 230 k Transaction Summary ================================================================================ Install 1 Package(s) Total download size: 230 k Installed size: 1.1 M Is this ok [y/N]: y Downloading Packages: Setting up and reading Presto delta metadata Processing delta metadata Package(s) data still to download: 230 k libevent-devel-1.4.14b-1.fc14.x86_64.rpm | 230 kB 00:00 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : libevent-devel-1.4.14b-1.fc14.x86_64 1/1 Installed: libevent-devel.x86_64 0:1.4.14b-1.fc14 Complete!
Now make works fine:
[drumcoder@drumcoder webdis]$ make cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o webdis.o webdis.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o cmd.o cmd.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o worker.o worker.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o slog.o slog.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o server.o server.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o libb64/cencode.o libb64/cencode.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o acl.o acl.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o md5/md5.o md5/md5.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o sha1/sha1.o sha1/sha1.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o http.o http.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o client.o client.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o websocket.o websocket.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o pool.o pool.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o conf.o conf.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o formats/json.o formats/json.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o formats/raw.o formats/raw.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o formats/common.o formats/common.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o formats/custom-type.o formats/custom-type.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o hiredis/hiredis.o hiredis/hiredis.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o hiredis/sds.o hiredis/sds.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o hiredis/net.o hiredis/net.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o hiredis/async.o hiredis/async.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o jansson/src/dump.o jansson/src/dump.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o jansson/src/error.o jansson/src/error.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o jansson/src/hashtable.o jansson/src/hashtable.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o jansson/src/load.o jansson/src/load.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o jansson/src/strbuffer.o jansson/src/strbuffer.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o jansson/src/utf.o jansson/src/utf.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o jansson/src/value.o jansson/src/value.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o jansson/src/variadic.o jansson/src/variadic.c cc -c -O0 -ggdb -Wall -Wextra -I. -Ijansson/src -Ihttp-parser -o http-parser/http_parser.o http-parser/http_parser.c cc -o webdis webdis.o cmd.o worker.o slog.o server.o libb64/cencode.o acl.o md5/md5.o sha1/sha1.o http.o client.o wbsocket.o pool.o conf.o formats/json.o formats/raw.o formats/common.o formats/custom-type.o hiredis/hiredis.o hiredis/sds.o hiredis/net.o hiredis/async.o jansson/src/dump.o jansson/src/error.o jansson/src/hashtable.o jansson/src/load.o jansson/src/strbuffer.o jansson/src/utf.o jansson/src/value.o jansson/src/variadic.o http-parser/http_parser.o -levent -pthread [drumcoder@drumcoder webdis]$ ./webdis & [1] 23153
Using Webdis
http://localhost:7379/LIST/*
lists all keys in Redis.
{"KEYS": {"KEYS":["key2","key","key1"]}
http://localhost:7379/GET/key
returns the value of a key.
{"GET":"valueOfKey"}
http://localhost:7379/DEL/key
deletes a key
{"DEL":1}