struct de pointeur de fonction et pb d'initialisation
Bonjour,
je suis en train de recompiler le source de la librairie OGG pour l'intégrer dans un module flash, mais j'ai une erreur au link.
Code:
error: undefined reference to '_floor0_exportbundle'
sachant que la la variable est définie dans un fichier C :
Code:
1 2 3 4
| const vorbis_func_floor floor0_exportbundle={
NULL,&floor0_unpack,&floor0_look,&floor0_free_info,
&floor0_free_look,&floor0_inverse1,&floor0_inverse2
}; |
Et c'est utilisé dans un autre fichier C de cette facon :
Code:
extern const vorbis_func_floor floor0_exportbundle;
comment supprimer cette erreur de link ?
Merci
struct de pointeur de fonction et pb d'initialisation
Bonjour,
je suis en train de modifier du code de la librairie OGG et je suis tombé sur une erreur étrange :
dans un fichier C (floor0.c), voila ce qui est déclaré :
Code:
1 2 3 4
| const vorbis_func_floor floor0_exportbundle={
NULL,&floor0_unpack,&floor0_look,&floor0_free_info,
&floor0_free_look,&floor0_inverse1,&floor0_inverse2
}; |
floor0_unpack, look, ... sont des fonctions définies plus haut dans le fichier C
Il existe la meme chose pour floor1_exportbundle et d'autres.
Dans un autre fichier, (registry.c), on va utiliser ce qui a été déclaré comme suit :
Code:
1 2 3 4 5
| extern const vorbis_func_floor floor0_exportbundle;
const vorbis_func_floor *const _floor_P[]={
&floor0_exportbundle,
&floor1_exportbundle,
}; |
Si je compile, j'ai cette erreur :
undefined reference to '_floor0_exportbundle'
Si j'enleve juste le extern, j'obtient cette erreur :
uninitialized const ‘floor0_exportbundle’
Si je supprime la ligne commençant par le extern, j'ai cette erreur :
‘floor0_exportbundle’ was not declared in this scope
Comment faire pour compiler ce code ?
Merci