[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: appelsys.h



strohecker guillaume wrote:
Bonjour,
Je suis en train d'étudier le C sous Unix et je suis confronté a un
petit problème de bibliothèque. Dans quel paquet se trouve appelsys.h -> j'ai bien installé
libhugs-unix-bundled (POSIX) mais j'obtiens toujours :

emprex@debian:~/le_langage_C/chap8$ gcc copieIE.c -o copieIE
copieIE.c:1:22: error: appelsys.h: Aucun fichier ou répertoire de ce
type
copieIE.c: In function ‘main’:
copieIE.c:4: error: ‘BUFSIZ’ undeclared (first use in this function)
copieIE.c:4: error: (Each undeclared identifier is reported only once
copieIE.c:4: error: for each function it appears in.)
emprex@debian:~/le_langage_C/chap8$
mes recherches sur le Web ne me donne pas plus de réponse.

appelsys.h n'est pas un fichier d'entête standard. En plus, le nom est français (alors que le standard Posix et les conventions linuxiennes sont en anglais). Je pense donc que c'est propre à votre école.

pour savoir que fait tel appel système, par exemple select, il convient de lire sa page de manuel par la commande
man 2 select
(et il faut avoir installé le paquet manpages-dev). Une page de man se défile avec les touches flèches, et se quitte par la touche q.

Je suggère notamment la lecture des sorties de
Par ailleurs le paquet libhugs-unix-bundled et lié à Hugs, un interprète Haskell. Trop peu d'écoles en France enseignent la programmation fonctionnelle, et souvent préfèrent l'enseigner avec le langage Ocaml (qui est développé en France, à l'INRIA projet Gallium). Donc je ne pense pas que le paquet libhugs-unix-bundled vous soit utile, et il est certainement inutile pour programmer en C.

Par contre, il est utile aussi d'installer le paquet libc-dev ou libc6-dev qui fournit les fichiers d'entête usuels (sous /usr/include).

Et une recherche Web sur BUFSIZ suggère l'inclusion de <stdio.h> qui n'interface pas les appels systèmes, mais ceux de la librairie standard C. Un appel système n'est pas une appel de fonction. Wikipedia fournit plein d'informations à ce sujet: http://fr.wikipedia.org/wiki/Appel_syst%C3%A8me http://fr.wikipedia.org/wiki/Linux http://fr.wikipedia.org/wiki/Noyau_Linux


Ca me sidère qu'un étudiant ne soit pas capable de chercher de nos jours sur le Web ou en bibliothèque universitaire et éprouve le besoin de déranger une liste pour ça. Qu'il n'oublie pas que son prof risque aussi de lire cette liste!

Cordialement

--
Basile STARYNKEVITCH         http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mines, sont seulement les miennes} ***


Reply to: