mam program skopiowany z jakiegoś tutoriala:
#include <cstdlib>
#include <iostream>
#include <sstream>
#include <SDL/SDL.h>
#include <SDL/SDL_ttf.h>
int main(int argc, char *args[])
{
SDL_Init(SDL_INIT_EVERYTHING);
//tak zrodził się świat i wszystko wraz z nim
SDL_Surface *ekran = NULL; //przestrzeń ekranu
ekran = SDL_SetVideoMode(640,480,32,SDL_SWSURFACE);
/* inicjujemy SDL_ttf*/
if(TTF_Init()!=0) /* 0 sukces, -1 porażka */
{
/* Zwracamy błąd, nie udało się zainicjować SDL_ttf */
fprintf( stderr, "Unable to init SDL_ttf: %s\n",TTF_GetError());
exit(1);
}
TTF_Font *font;
//...
/* Pobieramy fonta wielkości 20dpi*/
font=TTF_OpenFont("font.ttf", 20);
if(!font)
{
fprintf(stderr, "TTF_OpenFont: %s\n", TTF_GetError());
exit(1);
}
typedef struct{
Uint8 r; //składowa czerwona
Uint8 g; //składowa zielona
Uint8 b; //składowa niebieska
Uint8 unused; //pole nieużywane
} SDL_Color;
SDL_Surface * text1;
SDL_Color kolor;
kolor.r=0;
kolor.g=0;
kolor.b=255;
/* tworzymy surface z napisem SDL ttf */
text1 = TTF_RenderText_Solid(font, "SDL ttf", kolor);
SDL_BlitSurface(text1,NULL,ekran,NULL);
SDL_Flip(ekran);
SDL_Delay(5000);
}
problem polega na tym że kompilator nie pozwala zakończyć kompilacji i w wierszu 49 wyświetla błąd:
"conversion from SDL_main(int, char**)::SDL_Color' to non-scalar type
SDL_Color' requested "
używam Dev-C++ w konsolidatorze mam: -lmingw32 -lSDLmain -lSDL -lSDL_image
-lglut32 -lglu32 -lopengl32 -lwinmm -lgdi32 -lSDL_ttf
-lSDL_ttf
ktoś wie co może być nie tak? ewentualnie jak macie jakiś działające wykorzystanie SDL_ttf to też chętnie przyjmę