Bonsoir,
Je debute en lattice C et je rencontre des problemes de compilation.
En compilant un exemple de programme, j'obtient comme erreur
Undefined symbols First Referenced
_wind_create File 'C:\LC\EXAMPLES\CLOCK\CLOCK.O'
ceci pour toutes les symbols GEM utilisé.
Merci pour vos reponse.
Cordialement
Je ne connais pas le Lattice C, mais il utilise un makefile ?
Tu as bien la librairie GEM dans la liste des librairies à linker ?
desolé, je suis debutant de chez debutant ..je comprend pas tes questions
la librairie GEM est bien dans le aes.h non?
En fait, quand tu compiles, avant d'obtenir un exécutable (.PRG, .TOS .APP ou .ACC dans le cas présent), il y a plusieurs étapes :
- la compilation qui va transformer le code C en assembleur
- la compilation de l'assembleur généré en objet (le fichier .O)
A ce niveau là, tu as juste les appels vers les fonctions (manipulation de texte, GEM...), mais pas le code correspondant à ces fonctions qui sont dans des librairies objets (les fichiers .h donnent juste généralement le nom des fonctions et leurs paramètres d'appel)
Il reste donc cette étape :
- le linkage qui prend le .o généré + haut (ou les .o sur des projets un peu plus gros), et rajoute les bouts de codes correspondant aux fonctions externes appelés en les prenant depuis les librairies.
Là, j'ai l'impression que tu as passé les 2 premières étapes, mais qu'il a un problème avec le linker, probablement parce que dans les librairies à linker, il n'y a pas celle contenant les fonctions GEM.
Un makefile, c'est un fichier de paramétrage décrivant comment partir du ou des sources C d'origine et que faire pour obtenir l'exécutable.
Dans Turbo C / Pure C, il parlaient plutôt de fichiers projet (.PRJ), et parmi ceux fournis, il y avait plusieurs exemples de mémoire, qui permettaient de compiler un source avec ou sans GEM par exemple (donc un .PRG vs un .TOS) en listant les bonnes librairies selon les cas.
Il est possible que tu utilises le mauvais makefile/projet/fichier de configuration Lattice et qu'il faudrait utiliser un paramétré pour le GEM (désolé de ne pas être plus précis, j'ai jamais utilisé Lattice, et ça doit faire presque 20 ans que je n'ai pas compilé un programme C sur Atari)

J'ai fait un petit programe en C avec la librairie stdio, un simple printf avec getch pour sortir et j' ai reussi à le compiler et l'executer.
Qu'est ce qu'il ya exactement dans le .PRJ et comment le crée t-on?
Pour le coup, c'est dépendant de l'outil, donc de Lattice C, le mieux, c'est d'éditer un PRJ existant et de l'étudier (c'est normalement un fichier texte)
Eventuellement, tu peux poster un exemple de .PRJ, pour voir si on peut t'aider ou t'orienter.
j'ai regardé dans le PRJ, il suffit d'ajouter le fichier .C , juste ça...
Merci pour les infos