Hey bien le bonsoir tout le monde !
Je n'arrive pas à faire fonctionner la commande TTF_Init();. Je ne sais plus quoi faire pour que ça fonctionne. J'ai bien placer les fichier au bon endroits, j'ai aussi rajouter le chemin via code::block etc...
Si j'enlève cette commande le programme fonctionne et ne m'indique aucune erreurs... Mais juste avec cette commande il me trouve 50 erreurs oO Est-ce possible ??
Voici les erreurs;
Et maintenant voici mon code sources;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152 ||=== Build: Debug in SDL2 (compiler: GNU GCC Compiler) ===| F:\Programmation 3D\CodeBlock\Projets SDL\SDL2\main.c||In function 'SDL_main':| F:\Programmation 3D\CodeBlock\Projets SDL\SDL2\main.c|13|warning: multi-line comment [-Wcomment]| F:\Programmation 3D\CodeBlock\Projets SDL\SDL2\main.c|22|warning: multi-line comment [-Wcomment]| F:\Programmation 3D\CodeBlock\Projets SDL\SDL2\main.c|31|warning: multi-line comment [-Wcomment]| F:\Programmation 3D\CodeBlock\Projets SDL\SDL2\main.c|24|warning: variable 'pWindow' set but not used [-Wunused-but-set-variable]| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `Load_Glyph':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|609|undefined reference to `FT_Load_Glyph'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|671|undefined reference to `FT_Outline_Transform'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|677|undefined reference to `FT_Get_Glyph'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|678|undefined reference to `FT_Stroker_New'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|694|undefined reference to `FT_Render_Glyph'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|895|undefined reference to `FT_Done_Glyph'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|607|undefined reference to `FT_Get_Char_Index'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|682|undefined reference to `FT_Stroker_Set'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|683|undefined reference to `FT_Glyph_Stroke'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|684|undefined reference to `FT_Stroker_Done'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|686|undefined reference to `FT_Glyph_To_Bitmap'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|688|undefined reference to `FT_Done_Glyph'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_Init':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|340|undefined reference to `FT_Init_FreeType'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_SetFTError':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|331|undefined reference to `SDL_SetError'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_CloseFont':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|927|undefined reference to `FT_Done_Face'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_OpenFontIndexRW':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|432|undefined reference to `FT_Open_Face'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|460|undefined reference to `FT_Set_Char_Size'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|454|undefined reference to `FT_Set_Charmap'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|484|undefined reference to `FT_Set_Pixel_Sizes'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|381|undefined reference to `SDL_SetError'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|396|undefined reference to `SDL_SetError'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|405|undefined reference to `SDL_SetError'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_SetFTError':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|331|undefined reference to `SDL_SetError'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|331|undefined reference to `SDL_SetError'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o):\Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|389|more undefined references to `SDL_SetError' follow| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_OpenFontIndex':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|550|undefined reference to `SDL_RWFromFile'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|552|undefined reference to `SDL_SetError'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_SetFTError':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|331|undefined reference to `SDL_SetError'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_SizeUTF8':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1223|undefined reference to `SDL_strlen'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1241|undefined reference to `FT_Get_Kerning'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_SetFTError':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|331|undefined reference to `SDL_SetError'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_SizeUTF8':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1207|undefined reference to `SDL_SetError'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1207|undefined reference to `SDL_SetError'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_SizeText':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1183|undefined reference to `SDL_strlen'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1189|undefined reference to `SDL_Error'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1181|undefined reference to `SDL_SetError'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1181|undefined reference to `SDL_SetError'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_SizeUNICODE':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1326|undefined reference to `SDL_Error'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1318|undefined reference to `SDL_SetError'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1318|undefined reference to `SDL_SetError'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_RenderUTF8_Solid':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1380|undefined reference to `SDL_CreateRGBSurface'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1397|undefined reference to `SDL_SetColorKey'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1403|undefined reference to `SDL_strlen'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1429|undefined reference to `FT_Get_Kerning'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1375|undefined reference to `SDL_SetError'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_SetFTError':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|331|undefined reference to `SDL_SetError'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_RenderUTF8_Solid':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1415|undefined reference to `SDL_FreeSurface'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1371|undefined reference to `SDL_SetError'| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1371|undefined reference to `SDL_SetError'| SDL2\lib\libSDL2_ttf.a(SDL_ttf.o)||In function `TTF_RenderText_Solid':| \Users\slouken\release\SDL_ttf\SDL2_ttf-2.0.12-source\foo-x86\..\SDL_ttf.c|1339|undefined reference to `SDL_strlen'| ||More errors follow but not being shown.| ||Edit the max errors limit in compiler options...| ||=== Build failed: 50 error(s), 4 warning(s) (0 minute(s), 0 second(s)) ===|
Notez que je n'ai pas utilisé la commande TTF_init(); et le programme se lance parfaitement. J'espère que vous pourriez m'aider. M'aider à trouvé une solution à se problème parce que là je stagne. Sachant que cette fameuse commande, j'ai essayer de la placer dans diverse endroit du code source mais sans succès.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55 #include <stdlib.h> #include <stdio.h> #include <SDL.h> #include <SDL_image.h> #include <SDL_ttf.h> void pause(); int main(int argc, char *argv[]) { // ---------------------------------------------------------------------------------------\\ // Initialisation de la SDL if(SDL_Init(SDL_INIT_VIDEO) != 0) { fprintf(stdout,"Erreur lors de l'initialisation de la SDL : (%s)\n",SDL_GetError()); // Si il y a une erreur, on l'écrit. SDL_Quit(); // Arrêt de la SDL return -1; } // ---------------------------------------------------------------------------------------\\ // Création de la fenêtre SDL_Window* pWindow = NULL; pWindow = SDL_CreateWindow("Titre de la fenêtre",SDL_WINDOWPOS_CENTERED, // Signifie que nous centrons la fenêtre par rapport à l'axe X SDL_WINDOWPOS_CENTERED,// Signifie que nous centrons la fenêtre par rapport à l'axe Y 800, 600, // (Widht) La largeur de la fenêtre. (Height) La hauteur de la fenêtre SDL_WINDOW_SHOWN); // (Flags) Ce paramettre est peu spécial, il faut toujours mettre SDL_WINDOW_SHOWN. //Plus tars, ce sera ici que l'on indiquera à la SDL que nous souhaiterons utiliser OpenGL // --------------------------------------------------------------------------------------- \\ pause(); // Mise en pause du programme SDL_Quit(); // Arrêt de la SDL return EXIT_SUCCESS; // Fermeture du programme } void pause() { int continuer = 1; SDL_Event event; while (continuer) { SDL_WaitEvent(&event); switch(event.type) { case SDL_QUIT: continuer = 0; } } }
Enfin voilà... Je vous dis une grand merci d'avance et à bientôt !
Partager