Ce que les bibliothèques ont besoin d'être connectés pour timer_create, timer_settime et d'autres minuterie fonctions liées à la
La compilation d'un programme sur Linux que les appels POSIX fonctions de minuterie (par exemple: timer_create, timer_settime) renvoie des erreurs telles que:
Dans la fonction "foo": minuterie.c:(.texte+0xbb): undefined reference to `timer_create' minuterie.c:(.texte+0x187): undefined reference to `timer_settime' collect2: ld a retourné 1 code de sortie
La bibliothèque ai-je besoin de lien?
OriginalL'auteur | 2008-11-03
Vous devez vous connecter pour publier un commentaire.
Le compiler avec
-lrt
option. Il sera compilé.OriginalL'auteur
Ce devrait être documenté dans la page de man. Étant donné qu'il n'est pas ajouter
-lrt
.OriginalL'auteur
L'-lrt forces le lien, mais si vous avez le temps réel de la bibliothèque en place avant que vous pouvez lier à elle. La plupart du temps, c'est inclus automatiquement, mais si non, vous aurez besoin d'installer un temps réel de la bibliothèque à l'aide de apt-get. Ensuite, vous serez en mesure de relier à la suivante (ou similaire) lieu:
/lib/i386-linux-gnu/librt.so.1
Si vous êtes à l'aide de codeblocks et pour une raison quelconque -lrt n'est pas inclus, vous pouvez ajouter le au-dessus de la bibliothèque de chemin & nom de fichier en utilisant le menu suivant de la séquence:
Project->Build Options->Linker Settings->Link Libraries->Add
OriginalL'auteur steve-o
vous pouvez essayer de gcc-o mytemer mytimer.c -lrt
il fonctionne pour moi comme ça, mais pas dans cet ordre
gcc *lrt mytimer.c -o mytimer
OriginalL'auteur bedio
veuillez essayer ce qui suit:
OriginalL'auteur dragonfly