Ben la déclaration marche, en effet.
Alors déjà, "tout le code", ça tient en trois lignes
Alors, dans vars.h, j'ai ça :
extern const char *RootMenu;
funcs.h :
extern void DrawMenu(const char *Menu)
et dans menu.c :
#include <tigcclib.h>
#include "funcs.h"
#include "vars.h"
void DrawMenu(const char *Menu);
{
Menu=Menu+1; //même si ça veut rien dire, c'est pour virer un warning
}
DrawMenu(RootMenu);
Je te raconte pas la volée d'erreurs et de ouarningues que je me prends ^^
C'est lourd de savoir à fond comment marche une machine, et de pas savoir lui parler en langage de haut niveau.

Que ne fais-je pas bien ? Je dois déclarer DrawMenu en double peut-être ? A l'inclusion du header lors de l'écriture de son code ?
Au fait, une fonction déclarée je ne sais où, elle est toujours "extern" ?