lvqcl
2013-Sep-29 18:46 UTC
[flac-dev] MSVS: debug flac.exe uses release libogg_static.lib
Ralph Giles wrote:>> With current settings, MSVS links debug version of flac.exe (and other >> .exe and .dll files) with the release version of libogg_static.lib. >> MSVS issues a "warning LNK4098: defaultlib 'libcmt.lib' conflicts with use >> of other libs; use /NODEFAULTLIB:library" > > Sounds like a bug. Debug targets should link to debug builds of their > dependencies to simplify debugging.I agree, but according to README (section "Building with MSVC"): user builds libogg_static.lib separately, and then copies the file to flac\objs\release\lib directory. It seems that libogg debugging is not possible with such build method anyway. (I know that such thing is very dangerous for C++ program that uses STL/Boost/etc. But libogg is a pure C library, so it seems to be safe. A bit ugly though.)
Erik de Castro Lopo
2013-Sep-30 23:53 UTC
[flac-dev] MSVS: debug flac.exe uses release libogg_static.lib
lvqcl wrote:> Ralph Giles wrote: > > >> With current settings, MSVS links debug version of flac.exe (and other > >> .exe and .dll files) with the release version of libogg_static.lib. > >> MSVS issues a "warning LNK4098: defaultlib 'libcmt.lib' conflicts with use > >> of other libs; use /NODEFAULTLIB:library" > > > > Sounds like a bug. Debug targets should link to debug builds of their > > dependencies to simplify debugging. > > I agree, but according to README (section "Building with MSVC"): user builds > libogg_static.lib separately, and then copies the file to flac\objs\release\lib > directory. It seems that libogg debugging is not possible with such build method anyway. > > (I know that such thing is very dangerous for C++ program that uses STL/Boost/etc. > But libogg is a pure C library, so it seems to be safe. A bit ugly though.)I'd be keen to have the windows build automatically do the sanest possible thing, preferably with anyone having to copy files. Cheers, Erik -- ---------------------------------------------------------------------- Erik de Castro Lopo http://www.mega-nerd.com/
Ralph Giles
2013-Oct-01 00:18 UTC
[flac-dev] MSVS: debug flac.exe uses release libogg_static.lib
On 2013-09-30 4:53 PM, Erik de Castro Lopo wrote:> I'd be keen to have the windows build automatically do the sanest possible thing, > preferably with anyone having to copy files.The way we've been doing the Opus stuff is to have the project files expect a build in a parallel checkout. so: c:\dev\flac\FLAC.sln expects to find an ogg build in c:\dev\ogg\win32\VS2010\ Not as obvious as having a monolithic build, but it seems to work once you've figured it out. And each arch and target can reference the corresponding target in the dependency. -r