שגיאת לינקינג בסיפרייה nllib שפה: C , לינוקס - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

שגיאת לינקינג בסיפרייה nllib שפה: C , לינוקס


Eviljelly

Recommended Posts

Xubuntu 9.04

שלום

אני מנסה לקמפל תוכנית שכתבתי שמשתמשת ב netlink הורדתי את הספרייה libnl-dev גירסה 1.3 ואני מנסה להשתמש בפונקציה שנמצאת שם לפי התיעוד של הסיפרייה וחלק מהפונקציות האחרות של הסיפרייה אפילו משתמשות בה .

אבל משום מה מקבל את השגיאה הבאה כל הזמן :

gcc server.o list.o -o server -lnl
server.o: In function `main':
server.c:(.text+0x15a): undefined reference to `nl_handle_get_fd'
collect2: ld returned 1 exit status

את החלק הראשון של הקימפול הוא עבר בסדר ככה שנראה לי שהאינקלודים תקינים .

קטע הקוד הרלוונטי :


nl_socket_modify_cb(sock, NL_CB_VALID, NL_CB_CUSTOM, getMessegeFromKernel, NULL);
printf("waiting for kernel to connect ...");
code =0 ;
//sendMessegeToKernel();
fcntl(nl_handle_get_fd(sock), F_SETFL, O_NONBLOCK);

while (1)
{
nl_recvmsgs_default(sock);
nl_recvmsgs_default(sock);
sendMessegeToKernel();
}

בעקרון אני מנסה לשנות את הסוקט למצב חוסם (blocking) - זה לא מה שמוגדר כרגע אבל נתחיל מלקמפל , אם מישהו מכיר דרך אחרת אשמח לשמוע :)

קישור לתוכן
שתף באתרים אחרים

הקוד שלך תקין (הוא עבר קימפול), הבעייה היא בלינקינג. חסרה לך הספרייה שמכילה את nl_handle_get_fd (או שיש לך אותה איפשהו, אבל לא הכנסת אותה ללינקר).

תחפש את הפונקצייה הזאת בגוגל, תראה איזה ספרייה מכילה את זה, תשיג אותה ותכניס ללינקר.

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...