Help needed with SDL2 setup and undefined reference errors in C89 project using MinGW [message #1871046] |
Fri, 13 September 2024 06:52 |
|
I am trying to create a project in the C89 language using the SDL2 library. I am using MinGW and have verified the correct installation of SDL2 using the 64-bit version. The code for the small experiment I am doing is:
#include <SDL2/SDL.h>
#include <stdio.h>
int main(int argc, char* argv[]) {
// Initialize SDL
if (SDL_Init(SDL_INIT_VIDEO) != 0) {
printf("SDL initialization error: %s\n", SDL_GetError());
return 1;
}
// Create a window
SDL_Window* window = SDL_CreateWindow(
"SDL2 Window",
SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
640, 480,
SDL_WINDOW_SHOWN
);
if (window == NULL) {
printf("Window creation error: %s\n", SDL_GetError());
SDL_Quit();
return 1;
}
// Event handling
SDL_Event event;
int running = 1;
while (running) {
while (SDL_PollEvent(&event)) {
if (event.type == SDL_QUIT) {
running = 0;
}
}
SDL_Delay(16); // To limit CPU usage
}
// Clean up and close SDL
SDL_DestroyWindow(window);
SDL_Quit();
return 0;
}
The errors I am getting are:
Info: Internal Builder is used for build
gcc -O0 -g3 -Wall -c -fmessage-length=0 -o Test.o "..\\Test.c"
gcc -o Test.exe Test.o
Test.o: In function `SDL_main':
C:\Users\SiRecognizer\OneDrive\eclipse-workspace\Test\Debug/../Test.c:6: undefined reference to `SDL_Init'
C:\Users\SiRecognizer\OneDrive\eclipse-workspace\Test\Debug/../Test.c:7: undefined reference to `SDL_GetError'
C:\Users\SiRecognizer\OneDrive\eclipse-workspace\Test\Debug/../Test.c:12: undefined reference to `SDL_CreateWindow'
C:\Users\SiRecognizer\OneDrive\eclipse-workspace\Test\Debug/../Test.c:20: undefined reference to `SDL_GetError'
C:\Users\SiRecognizer\OneDrive\eclipse-workspace\Test\Debug/../Test.c:21: undefined reference to `SDL_Quit'
C:\Users\SiRecognizer\OneDrive\eclipse-workspace\Test\Debug/../Test.c:29: undefined reference to `SDL_PollEvent'
C:\Users\SiRecognizer\OneDrive\eclipse-workspace\Test\Debug/../Test.c:34: undefined reference to `SDL_Delay'
C:\Users\SiRecognizer\OneDrive\eclipse-workspace\Test\Debug/../Test.c:38: undefined reference to `SDL_DestroyWindow'
C:\Users\SiRecognizer\OneDrive\eclipse-workspace\Test\Debug/../Test.c:39: undefined reference to `SDL_Quit'
c:/mingw/bin/../lib/gcc/mingw32/6.3.0/../../../libmingw32.a(main.o):(.text.startup+0xa0): undefined reference to `WinMain@16'
collect2.exe: error: ld returned 1 exit status
Could you please help me resolve this issue?
I am completely ignorant in the use of SDL2. Thank you in advance to anyone who can help me!
|
|
|
|
Powered by
FUDForum. Page generated in 0.03113 seconds