[vorbis-dev] [Newbie] getting up to speed

Chris Wolf cwolf at starclass.com
Thu Sep 27 17:11:23 PDT 2001



I recommend that you look at the project files in win32sdk/sdk/build  as an example.
You will note that the release versions of the sample code is also compiled with 
"Multithreaded" only. i.e. not "Multithreaded DLL".  In other words, make sure that 
your application code (the client of the libraries) is also correctly.

N.B.  that the *debug* versions of the static libraries *are* compiled with "Multithreaded DLL"
for reasons mentioned earlier.  So if you app code is compiled for debug, then that 
explains what you're seeing.

On 9/27/2001 at 4:57 PM Brian Hook wrote:

>--- Chris Wolf said ---
>
>> The release versions of those static libaraies are configured 
>> for static linking of the runtime and appear to work.
>
>Hmmm, I must be misunderstanding something or doing something wrong.  I
>have all my MSVC projects for the release build set to use
>"Multithreaded" (i.e. non-DLL).  I'm linking with the XXX_static.lib
>files in the Ogg Vorbis W32SDK, however I'm getting link errors that
>seem to indicate that it's trying to link with MSVCRT.LIB (the
>"Multithreaded DLL" lib):
>
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: _free already defined in
>LIBCMT.lib(free.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: _calloc already defined in
>LIBCMT.lib(calloc.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: __errno already defined in
>LIBCMT.lib(dosmap.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: _malloc already defined in
>LIBCMT.lib(malloc.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: _realloc already defined in
>LIBCMT.lib(realloc.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: _fclose already defined in
>LIBCMT.lib(fclose.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: _fread already defined in
>LIBCMT.lib(fread.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: _floor already defined in
>LIBCMT.lib(floor.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: _memmove already defined in
>LIBCMT.lib(memmove.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: _toupper already defined in
>LIBCMT.lib(toupper.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: _ldexp already defined in
>LIBCMT.lib(ldexp.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: _fprintf already defined in
>LIBCMT.lib(fprintf.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: _fopen already defined in
>LIBCMT.lib(fopen.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: _sprintf already defined in
>LIBCMT.lib(sprintf.obj)
>MSVCRT.lib(MSVCRT.dll) : error LNK2005: __strdup already defined in
>LIBCMT.lib(strdup.obj)
>
>If I change all my projects to use "Multithreaded DLL" it works fine.
>Any advice?  Should I try to grab the tarball and do it myself or is
>there a small chance that the W32SDK will add the necessary libs?
>
>Brian
>
>
>--- >8 ----
>List archives:  http://www.xiph.org/archives/
>Ogg project homepage: http://www.xiph.org/ogg/
>To unsubscribe from this list, send a message to
>'vorbis-dev-request at xiph.org'
>containing only the word 'unsubscribe' in the body.  No subject is needed.
>Unsubscribe messages sent to the list will be ignored/filtered.

--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'vorbis-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.



More information about the Vorbis-dev mailing list