Я следую вместе с учебниками SDL2.0 от LazyFoo, используя Code:: Blocks 13.12. У меня не возникло проблем с подключением и запуском SDL2 в VS2010, но с измененной IDE и встречей этой ошибки:
winapifamily.h: Нет такого файла или каталога
Я думаю, что все правильно связано. Я указал программу на мои каталоги SDL2 include и lib.
Buildlog: (ошибка возникает в файле:..\include\SDL2\SDL_platform.h)
=== Build: Debug в SDL2_Setup (компилятор: компилятор GNU GCC) ===
фатальная ошибка: winapifamily.h: нет такого файла или каталога
=== Сбой сборки: 1 ошибка, 0 предупреждений (0 минут, 0 секунд) ===
Это мой первый вопрос, задающий вопрос здесь. Я сделал Google для ответа и поискал существующие вопросы/ответы здесь, но не смог решить проблему. Вот мой код.
Мой код:
// 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_GetError: %s\n", SDL_GetError() );
    }
    else
    {
        // Create window
        window = SDL_CreateWindow( "SDL Tutorial", SDL_WINDOWPOS_UNDEFINED, SCREEN_WIDTH, SCREEN_HEIGHT, SDL_WINDOW_SHOWN );
        if( window == NULL )
        {
            printf( "Window could not be created! SDL_GetError: %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;
}