Archived

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

+AA_970+

Ogg Vorbis libs

Recommended Posts

Does anyone know what type of apps the different versions of the libs that comes with the Vorbis SDK are used for? For example there's: ogg.lib, ogg_d.lib, ogg_static.lib, ogg_static_d.lib what's the "_d"? Digital Radiation Edited by - +AA_970+ on November 18, 2001 1:01:39 PM

Share this post


Link to post
Share on other sites
I made a stupid assumption in my original post (I edited it out), I said the libs with "..._static" were static libs - not realizing that the file being a .lib file made it a static library.

Anyway, so the "_d" are for debug libs, now what''s the difference between "ogg.lib" and "ogg_static.lib"?

I tried compliling (linking actually) with the "_static" lib files and got a ton of linking errors with functions being defined in 2 libraries, msvcrt.lib and libc.lib

Digital Radiation

Share this post


Link to post
Share on other sites
Ok I know what the libs are, but I tried to use the "_static" libs (I disabled default libraries) but I got even more linker errors from the vorbis files as well as my other non vorbis related code, most looked like "unresolved external symbol __imp__qsort"

Digital Radiation

Share this post


Link to post
Share on other sites
Linking to libc.lib I get the following errors and warnings:

LINK : warning LNK4049: locally defined symbol "_free" imported
LINK : warning LNK4049: locally defined symbol "_calloc" imported
LINK : warning LNK4049: locally defined symbol "_malloc" imported
LINK : warning LNK4049: locally defined symbol "_realloc" imported
LINK : warning LNK4049: locally defined symbol "_ftell" imported
LINK : warning LNK4049: locally defined symbol "_fclose" imported
LINK : warning LNK4049: locally defined symbol "_fread" imported
LINK : warning LNK4049: locally defined symbol "_fseek" imported
LINK : warning LNK4049: locally defined symbol "_floor" imported
LINK : warning LNK4049: locally defined symbol "_memmove" imported
LINK : warning LNK4049: locally defined symbol "_ldexp" imported
LINK : warning LNK4049: locally defined symbol "_fopen" imported
LINK : warning LNK4049: locally defined symbol "_sprintf" imported
vorbisfile_static.lib(vorbisfile.obj) : error LNK2001: unresolved external symbol __imp___errno
vorbis_static.lib(info.obj) : error LNK2001: unresolved external symbol __imp__strdup
vorbis_static.lib(info.obj) : error LNK2001: unresolved external symbol __imp__toupper
vorbis_static.lib(analysis.obj) : error LNK2001: unresolved external symbol __imp__fprintf
vorbis_static.lib(analysis.obj) : error LNK2001: unresolved external symbol __imp__perror
vorbis_static.lib(floor1.obj) : error LNK2001: unresolved external symbol __imp__qsort
vorbis_static.lib(lsp.obj) : error LNK2001: unresolved external symbol __imp__qsort
ogg_static.lib(framing.obj) : error LNK2001: unresolved external symbol __imp__memchr

Digital Radiation


Edited by - +AA_970+ on November 19, 2001 6:39:13 PM

Share this post


Link to post
Share on other sites
Well I''ve been playing around with the linker setting. I have 2 apps, a small app that only plays ogg file and a game I''m working on. To get the small app to work without any problems I have to link to msvcrt.lib and add /nodefaultlib:"libc.lib" to the project options, and uncheck the "Ignore all default libraries" box.

When I setup the same linker setting for the game, it just crashed back to windows, even when I commented out all the ogg vorbis code. I guess it was b/c I was linking to msvcrt.lib, which is supposed to be for dll''s (well that''s what it says in the docs, but it worked with the small app?!).

Oh and with the small app I compiled w/o the "_static" libs (with the default linker settings), and the exe was created, but the program gave a GPF when I tried to play a sound file.

Anyway, I''ll keep playing around with the linker settings maybe I''ll get lucky.

Digital Radiation

Share this post


Link to post
Share on other sites