Author Topic: Can't compile basic SDL2 script  (Read 12511 times)

jpchang

  • Guest
Can't compile basic SDL2 script
« on: July 19, 2014, 05:38:06 pm »
Hello, everyone. I am following Lazy Foo's SDL 2.0 tutorial. On the section for installing SDL2 for Code::Blocks, I followed every step, but when I compiled, I got an error that I haven't been able to find elsewhere on the Internet.

The code:
Code
/*This source code copyrighted by Lazy Foo' Productions (2004-2013)
and may not be redistributed without written permission.*/

//Using SDL and standard IO
#include <SDL.h>
#include <stdio.h>

//Screen dimension constants
const int SCREEN_WIDTH = 640;
const int SCREEN_HEIGHT = 480;

int main( int argc, char* args[] )
{
//The window we'll be rendering to
SDL_Window* window = NULL;

//The surface contained by the window
SDL_Surface* screenSurface = NULL;

//Initialize SDL
if( SDL_Init( SDL_INIT_VIDEO ) < 0 )
{
printf( "SDL could not initialize! SDL_Error: %s\n", SDL_GetError() );
}
else
{
//Create window
window = SDL_CreateWindow( "SDL Tutorial", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, SCREEN_WIDTH, SCREEN_HEIGHT, SDL_WINDOW_SHOWN );
if( window == NULL )
{
printf( "Window could not be created! SDL_Error: %s\n", SDL_GetError() );
}
else
{
//Get window surface
screenSurface = SDL_GetWindowSurface( window );

//Fill the surface white
SDL_FillRect( screenSurface, NULL, SDL_MapRGB( screenSurface->format, 0xFF, 0xFF, 0xFF ) );

//Update the surface
SDL_UpdateWindowSurface( window );

//Wait two seconds
SDL_Delay( 2000 );
}
}

//Destroy window
SDL_DestroyWindow( window );

//Quit SDL subsystems
SDL_Quit();

return 0;
}


Error message after building:
Code
-------------- Build: Debug in SDL2 (compiler: GNU GCC Compiler)---------------

mingw32-g++.exe -LC:\mingw_dev_lib\lib -LC:\Programming\C++\SDL\SDL2-2.0.3\i686-w64-mingw32\lib -o bin\Debug\SDL2.exe obj\Debug\01_hello_SDL.o  -lmingw32 -lSDL2main -lSDL2 
mingw32-g++.exe: Internal error: Aborted (program collect2)
Please submit a full bug report.
See <URL:http://www.mingw.org/bugs.shtml> for instructions.
Process terminated with status 1 (0 minute(s), 0 second(s))
0 error(s), 0 warning(s) (0 minute(s), 0 second(s))
 

I am coding in C++, and I am using a Windows 8 laptop. Please help, thanks.

Offline stahta01

  • Lives here!
  • ****
  • Posts: 7785
    • My Best Post
Re: Can't compile basic SDL2 script
« Reply #1 on: July 19, 2014, 06:38:54 pm »
My suggestion, use the same compiler as was used to build the library.
(Mixing Compiler versions does NOT work very often; mixing MinGW32 and MinGW64 does NOT work very often either.)

If that fails, post the problem on a site that support your compiler.

Read the rules before posting again. http://forums.codeblocks.org/index.php/topic,9996.0.html

Tim S.
« Last Edit: July 19, 2014, 06:57:08 pm by stahta01 »
C Programmer working to learn more about C++ and Git.
On Windows 10 64 bit and Windows 11 64 bit.
--
When in doubt, read the CB WiKi FAQ. http://wiki.codeblocks.org