hiredis "неопределенная ссылка на" aeCreateFileEvent "" ошибка компилятора
Я пытался скомпилировать один из примеров, предоставленных hiredis, но каждый раз он не может что-то найти. Я уже сделал make && sudo make install
, Для компиляции я использую -lhiredis -levent
флаги. Однако он продолжает говорить мне об этих ошибках:
/tmp/cc4x5uX7.o: In function `redisAeAddRead':
example-async.c:(.text+0xb8): undefined reference to `aeCreateFileEvent'
/tmp/cc4x5uX7.o: In function `redisAeDelRead':
example-async.c:(.text+0x10b): undefined reference to `aeDeleteFileEvent'
/tmp/cc4x5uX7.o: In function `redisAeAddWrite':
example-async.c:(.text+0x16a): undefined reference to `aeCreateFileEvent'
/tmp/cc4x5uX7.o: In function `redisAeDelWrite':
example-async.c:(.text+0x1bd): undefined reference to `aeDeleteFileEvent'
/tmp/cc4x5uX7.o: In function `disconnectCallback':
example-async.c:(.text+0x494): undefined reference to `aeStop'
/tmp/cc4x5uX7.o: In function `main':
example-async.c:(.text+0x50b): undefined reference to `aeCreateEventLoop'
example-async.c:(.text+0x5fb): undefined reference to `aeMain'
collect2: error: ld returned 1 exit status
Я не уверен, но я думаю, что это связано с тем, что компилятор не находит библиотеку, на которую ссылаются #include <ae.h>
, потому что первая ошибка, которую он мне показал, состояла в том, что он не нашел этот заголовок.
Я видел, что источник Redis имел ae.h
, ae.c
и все эти библиотеки, поэтому в отчаянной попытке заставить его работать, я просто скопировал их в свой /usr/local/include
реж. Как только я это сделал, он показал мне ошибки, показанные выше.
Я думаю, что это легко решить, установив эту библиотеку, но я не знаю как. Кто-нибудь может мне с этим помочь? Если это не проблема, может кто-нибудь объяснить, что происходит и почему я не могу собрать примеры.