Compilation -ansi - C - Programmation
Marsh Posté le 01-07-2004 à 10:14:35
kill n'est pas ansi, snprintf non plus
-Wall -W -ansi -pedantic pour être encore plus stricte
Marsh Posté le 01-07-2004 à 10:39:04
Donc le but serait de trouver des fonctions équivalentes en ansi pour être le plus portable possible.
Quand je vois que pas mal de fonctions liées aux sockets (accept, ntohs, ...) ne sont pas ansi (enfin apparemment), c'est la merde non ?
Marsh Posté le 01-07-2004 à 11:16:34
ce n'est pas parce que des fonctions de sont pas ANSI que la compilation avec le flag -ansi doit sortir des warning. je compile du C avec des fonctions POSIX (posix threads) et je n'ai aucun warning. Je pense qu'il faut chercher ailleurs.
Marsh Posté le 04-07-2004 à 02:11:36
Non, y'a pas a chercher ailleurs : si tu regardes dans signal.h tu verra que la déclaration de ces fonctions est protégée par des #ifdef __USE_POSIX. Avec -ansi ces fonctions ne sont pas déclarées.
Marsh Posté le 01-07-2004 à 09:54:11
Salut,
Sur ma SuSE, par exemple un programme qui contient un appel à la fonction kill. J'inclue bien la bibliothèque <signal.h>
Pourquoi, si je compile avec gcc et l'option -ansi, j'obtiens ce message :
J'ai le même message avec d'autres fonctions (comme snprintf par exemple), alors que j'inclue bien la bibliothèque adéquate à chaque fois.
Voilà je suis curieux de savoir pourquoi.
Merci !
---------------
Savoir c'est vivre, et maintenir dans l'ignorance, c'est presque un homicide.