Cela me semble très curieux car le code se compile sans erreur sur un système Debian 5 mais sur un FreeBSD 7 j'obtiens une erreur de syntaxe ici sur la ligne 98 par exemple.Erreur de syntaxe portage du code C de Linux à FreeBSD
int ipmi_fru_get_board_info_mfg_time(ipmi_fru_t *fru, time_t *time);
À l'origine, il y avait un saut de ligne entre * fru et time_t. Je ne sais pas ce qui pourrait causer ces erreurs de compilation, mais il me semblait important de mentionner le saut de ligne.
Ou celui-ci de la ligne 298 est resté complètement inchangé dans son format.
int ipmi_fru_get(ipmi_fru_t *fru,
int index,
char **name,
int *num,
enum ipmi_fru_data_type_e *dtype,
int *intval,
time_t *time,
char **data,
unsigned int *data_len);
Ce sont les erreurs non modifiées transmises au terminal.
In file included from out_fru.c:37:
../include/OpenIPMI/ipmi_fru.h:98: error: expected declaration specifiers or '...' before 'time_t'
../include/OpenIPMI/ipmi_fru.h:298: error: expected declaration specifiers or '...' before 'time_t'
../include/OpenIPMI/ipmi_fru.h:474: error: expected declaration specifiers or '...' before 'time_t'
../include/OpenIPMI/ipmi_fru.h:559: error: expected declaration specifiers or '...' before 'time_t'
../include/OpenIPMI/ipmi_fru.h:627: error: expected declaration specifiers or '...' before 'time_t'
Les erreurs suivantes semblent être liées parce qu'elles affectent les fonctions déclarées sur les lignes ci-dessus du fichier d'en-tête ipmi_fru.h.
out_fru.c: In function 'ipmi_cmdlang_dump_fru_info':
out_fru.c:87: warning: passing argument 7 of 'ipmi_fru_get' from incompatible pointer type
out_fru.c:87: warning: passing argument 8 of 'ipmi_fru_get' from incompatible pointer type
out_fru.c:87: error: too many arguments to function 'ipmi_fru_get'
Quelle pourrait être la cause de ces erreurs de syntaxe spécifiques à la plate-forme étrange? Ma première pensée était un caractère non imprimable mais j'ai essayé de vérifier avec cat -e include/OpenIPMI/ipmi_fru.h | moins, tout ce que je vois sont des espaces et des sauts de ligne.
Avez-vous vérifié si cela existe et quelle est la définition de cette structure? –
Vous aviez absolument raison mon bon monsieur, apparemment vous n'avez pas besoin de temps.h inclus pour time_t sur Linux. Nouvelles à moi. –