Archived

This topic is now archived and is closed to further replies.

Sean_Berry

Open 'AL' ...co..co...coo...compile?

Recommended Posts

Hi everyone. I''m getting a series of linker errors for my Dev-C++ project. I''m using OpenAL unsucessfully. They errors look like this: [Linker error] undefined reference to ''alcOpenDevice'' ''alcCreateContext'' ''alcMakeContextCurrent'' Oh jeez. The list goes on. I included OpenAl32.lib and alut.lib in my project. Do I need something else because I"m using Dev-C++? Anyone have basic knowledge of C++ compilers to know what this kind of error means? Thank you for reading my problem. I hope it isn''t too much of a problem, eh? -Sean Berry

Share this post


Link to post
Share on other sites
I just had the same problem a few days ago. Dev-C++ uses .a libraries rather than .libs. As far as I know, Dev-C++ doesn''t come with .a libs for OpenAL (I might be wrong). You''ll need to either use the MinGW reimp.exe program to convert your OpenAL .dlls to MinGW .a libraries, or find the .a libraries somewhere on the internet. Look here for more information on converting the libraries.

Dave

Share this post


Link to post
Share on other sites
Thank you Dave.

Ok, so I compile the reimp source files and make a .bat for what .lib''s I want to convert. That''s simple, just how I like it.

But oh wait I''m too lame to figure out how to compile those files. There''s a makefile? What? Makefile? Where''s my .dev?! What.. is this real programming? What?


Too lame to feel shame,
Sean Berry

Share this post


Link to post
Share on other sites
Thanks again Dave. I appreciate your help.

I got the reimp.exe to convert openal32.lib, this is great. However, when I ask it to convert Alut.lib, it just spits out gobbly gook in a 4kb file. Did you have a similar problem? Do you have libalut.a? If so, would you be willing to e-mail it to me at berr0171@umn.edu

Thanks again,
Sean Berry

Share this post


Link to post
Share on other sites
Last time I checked, the Creative-supplied "Alut.lib" was a static library (I have no idea why they would only supply a static library for LGPL code) and that would be my guess why it isn''t being converted properly.

I have some slightly-old built-from-CVS MinGW OpenAL binaries sitting on my machine that I can upload. I make a single modification to an internal header to get it to build cleanly and I place ALUT inside of the normal "openal32.dll" file (like OpenAL is setup in *nix). I just uploaded the binaries here, use the headers that you already have, they should work. The modification I made to the code before building (and exactly how I went about building it) is detailed more here. I haven''t tested those exact binaries, but everything worked last time I did try them.

Share this post


Link to post
Share on other sites