Bonsoir,
Je dois utiliser libnet pour un projet personnel afin de tester les capacités d'un serveur que j'ai créé. J'ai donc écris un code en C qui importe la librairie libnet de cette manière :
Cependant, lorsque je compile (avec cette commande : gcc $(libnet-config --defines) -o synflood synflood.c -lnet ) j'obtiens les erreurs suivantes :
/tmp/cc5IlBWg.o: dans la fonction « main »:
synflood.c:(.text+0x7f): référence indéfinie vers « libnet_name_resolve »
synflood.c:(.text+0xa5): référence indéfinie vers « libnet_open_raw_sock »
synflood.c:(.text+0xc4): référence indéfinie vers « libnet_error »
synflood.c:(.text+0xd8): référence indéfinie vers « libnet_init_packet »
synflood.c:(.text+0xf4): référence indéfinie vers « libnet_error »
synflood.c:(.text+0x1a2): référence indéfinie vers « libnet_build_ip »
synflood.c:(.text+0x269): référence indéfinie vers « libnet_error »
synflood.c:(.text+0x285): référence indéfinie vers « libnet_write_ip »
synflood.c:(.text+0x2b7): référence indéfinie vers « libnet_error »
collect2: error: ld returned 1 exit status
A quoi cela est-il dû? J'ai essayé de voir du côté des headers (principalement dans libnet.h et libnet-functions.h) pour tenter de trouver des erreurs de prototypes mais je n'en ai pas trouvé. De plus certaines fonctions qui sont décrites dans libnet-functions.h fonctionnent parfaitement dans mon code! Enfin, "fonctionnent parfaitement", disons plutôt que je ne reçois pas de message d'erreur lors de la compilation alors que d'autres fonctions qui sont présentes dans le même header vont m'afficher "référence indéfinie vers « trucbidule »).
Merci pour votre aide
Partager