libuv undefined ссылка на uv_loop_new

После компиляции я пытаюсь запустить программу libuv sample:

#include  #include  int main() { uv_loop_t *loop = uv_loop_new(); printf("Now quitting.\n"); uv_run(loop, UV_RUN_DEFAULT); return 0; } 

Но, когда вы пытаетесь запустить, я получаю следующую ошибку:

 **/tmp/ccHTpspB.o: In function `main': main.c:(.text+0x9): undefined reference to `uv_loop_new' main.c:(.text+0x28): undefined reference to `uv_run' collect2: error: ld returned 1 exit status** 

Где я неправ ?

PS: Он не работает с #include “uv.h”

Вам нужно связать libuv.a с вашим скомпилированным кодом, и компоновщик не знает, где найти скомпилированный libuv.

Чтобы дать вам лучший ответ, мне нужно будет видеть, что вы компилируете команду, но в то же время я настоятельно рекомендую это видео, где Райан создает образец проекта libuv. Фактический код, который он использует, немного устарел, поскольку API изменился, но я думаю, что вы найдете начало, где он ставит проект вместе очень просвещенным.

http://vimeo.com/24713213

В ubuntu я успешно использовал следующую команду:

 gcc sample.c -luv