Jump to content
  • Advertisement
Sign in to follow this  
uzipaz

Library linking problem with SDL 2.0

This topic is 1797 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I have used CodeBlocks with MinGW to use opengl with SDL 1.2 and I was able to link libraries that are required for MinGW to work with SDL 1.2, these static libraries are mingw32.lib, SDLmain.lib and SDL.lib. However, I just got SDL 2.0 and I having trouble linking libraries with my SDL 2.0 project.

 

I did the same procedure, I went to Project->Build Options->Linker Settings and added three libraries that are required for SDL 2.0 (I extracted the library files to the MinGW lib folder and the include files to the MinGW include folder, the static lib files are in .a extension and written as libSDLmain.a instead of SDLmain.lib) and add three files under link libraries with names of "libmingw32" "libSDL2main" "libSDL2". In the search directories tab I added the path to the MinGW lib folder where I placed my SDL static library files...

 

I wrote the code and checked carefully for deprecated and changed function names that are in SDL 2.0...

 

When I compiled the code, I am getting these errors

 

obj\Debug\app.o||In function `ZN3app9onExecuteEv':|
D:\Programming\SDL OpenGL\app.cpp|19|undefined reference to `SDL_PollEvent'|
obj\Debug\appOnInitialize.o||In function `ZN3app12onInitializeEv':|
D:\Programming\SDL OpenGL\appOnInitialize.cpp|5|undefined reference to `SDL_Init'|
D:\Programming\SDL OpenGL\appOnInitialize.cpp|24|undefined reference to `SDL_CreateWindow'|
D:\Programming\SDL OpenGL\appOnInitialize.cpp|27|undefined reference to `SDL_GL_CreateContext'|
obj\Debug\appOnRender.o||In function `ZN3app8onRenderEv':|
D:\Programming\SDL OpenGL\appOnRender.cpp|15|undefined reference to `SDL_GL_SwapWindow'|
C:\Program Files\CodeBlocks\MinGW\lib\libmingw32.a(main.o):main.c:(.text.startup+0xa7)||undefined reference to `WinMain@16'|
||=== Build finished: 6 errors, 0 warnings (0 minutes, 0 seconds) ===|

 

I did a lot of google searches but I am not able to configure how to sove this...

I am a noob with configuring compilers and linking and building libraries in C++, can someone please guide me how can I solve this in my CodeBlocks IDE?

 

Thank you
 

Share this post


Link to post
Share on other sites
Advertisement

That did it... The only problem here was I was using the wrong bit version of the libraries... I am using a 32 bit compiler with a 32 bit Operating System and I was linking my project with 64 bit libraries and headers...

 

There are two download folders for SDL 2.0 development files... one is name "x86_64-w64-mingw32" and the other is "i686-w64-mingw32"... I confused the former with 32 bit... however the string had x86 in it so I thought these were the 32 bit files... however I was wrong...I wasted a lot of energy and headache in just discovering this trivial error...

 

Thank you for the link...

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!