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
2
3
4
5
6
 
	#include "ma_lib.h"
	typedef  struct s_point {
		int x;
		int y;
	}point;
Je compile avec gcc : gcc -c ma_librairie.c
Il n' y a pas d'erreurs.
Lorsque je veux utiliser ma librairie dans le programme test.c
Contenu de prog.c:
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;
}
Je compile avec : gcc test.c -o test.x ma_librairie.o
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.