J'essaie d'utiliser timerfd_create et timerfd_settime sous Debian Linux lenny. La page de manuel dit d'inclure <sys/timerfd.h>
. Ce fichier ne peut pas être situé sur mon système. Selon la recherche de paquets Debian, les seuls paquets avec timerfd.h sont les paquets linux-headers- *.timerfd_create avec les tests debian linux sur amd64
J'ai installé les paquets linux-headers-2.6.26-1-amd64 et linux-headers-2.6.26-1-common. J'ai essayé d'inclure le fichier /lib/modules/2.6.26-1-amd64/build/include/linux/timerfd.h (et non compris <sys/timerfd.h>
). Mais je reçois l'erreur de liens suivant:
slave.c :(texte + 0x166):. Undefined reference to timerfd_ceate
slave.c :(texte + 0x1e5):. Undefined reference to timerfd_settime
Ma commande build était gcc -o esclave esclave.c -L ../ libs -lcan -lutils -lrt
Les bibliothèques can et utils sont les miennes. Aucun d'entre eux n'utilise ou ne définit l'une des fonctions timerfd_ *. J'ai essayé -lrt parce que timer_create et timer_settimer en ont besoin, même si ce n'est pas dans la page de manuel. Un programme de test avec timer_create et timer_settimer fonctionne sans problèmes et comme prévu.
De quels paquets ai-je besoin pour installer, de quelle bibliothèque ai-je besoin pour lier, et quels sont les fichiers dont j'ai besoin pour utiliser timerfd_create et timerfd_settimer.
Merci Edger
Juste comme une note de côté, est tombé sur ce sur google, totalement résolu mon problème, merci! – icco