Je suis en train de compiler un programme c qui inclut un en-tête dans des fichiers .c. mais seulement 1 des fichiers .c utilise réellement la variable définie dans le fichier d'en-tête. Voici un exemple de code qui générera le problème de l'éditeur de liens. J'essaie d'avoir mon fichier d'en-tête contenant des variables globales qui sont utilisées par 2 différents fichiers .c ... Tout type d'aide serait apprécié. Merci.Problèmes de lieur linux gcc avec le programme C
fichier tmp1.h
#ifndef TMP1_H_1
#define TMP1_H_1
double xxx[3] = {1.0,2.0,3.0};
#endif
fichier tmp1.c
#include "tmp1.h"
void testing()
{
int x = 0;
x++;
xxx[1] = 8.0;
}
fichier main1.c
#include <stdio.h>
#include "tmp1.h"
int main()
{
printf("hello world\n");
}
Généralement, c'est une bonne idée d'inclure dans la question quelle erreur vous obtenez réellement. – sth
Ce serait le tristement célèbre "C1234: Ne pas définir les données dans vos fichiers d'en-tête, ya oie" message d'erreur :-) – paxdiablo