Bonjour je developpe sous GNU/Linux avec gcc.
J'ai un problème avec des structures et une librairie.
J'ai créé une librairie :ma_librairie.h
Contenu de ma_libraire.h
Contenu de ma_librairie.c
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2struct s_point;
Je compile avec gcc : gcc -c ma_librairie.c
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 #include "ma_lib.h" typedef struct s_point { int x; int y; }point;
Il n' y a pas d'erreurs.
Lorsque je veux utiliser ma librairie dans le programme test.c
Contenu de prog.c:
Je compile avec : gcc test.c -o test.x ma_librairie.o
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #include <stdio.h> #include <stdlib.h> #include "ma_lib.h" int main () { struct point p; p.x = 5; return 0; }
Et il y a une erreur :
storage size of `p' isn't known
J'ai essayé de remplacer
struct point p;
par
struct point * p;
p = (point* ) malloc ( sizeof( struct point));
mais j'ai aussi une erreur:
`point' undeclared (first use in this function)
(Each undeclared identifier is reported only once
Merci de m'aider.
Partager