[sldev] Linker error building a Debug viewer from 1.17.0.12 sources under VC8

Nicholaz Beresford nicholaz at blueflash.cc
Wed Jun 20 10:53:36 PDT 2007


I found a few quirks in my vc8 files and will make a V3.ZIP of it
later.

But meanwhile
- newview, properties, linker, input, ignore specific library,
   and add "libcmt;" to exclude the non debug library from the
   build
- newview, Source folder, right-click, Add existing

It does compile ... didn't try if it runs but I hope that
the function won't actually be called.

Dunno if you have it already, but I can also send you my
stuff to actually use the malloc_dbg functions.


Nick




Second Life from the inside out:
http://nicholaz-beresford.blogspot.com/


Able Whitman wrote:
> I'm trying to build a Debug configuration of the 1.17.0.12 
> <http://1.17.0.12> sources under VC8. Using Nicholasz's VC8 project 
> files, just building the project as-is resulted in some linker errors 
> because the Debug config hadn't been changed to use the VC8 versions of 
> the APR and Mozilla libraries. Fixing this problem resulted in other 
> linker errors, particularly a missing fmod library. So I copied the 
> missing .libs from the "i686-win32\lib_release" folder to the 
> "lib_debug" folder, which solved the fmod problem.

-------------- next part --------------

#include <stdlib.h>

// HACK [Nicholas Beresford]

//
// implement _invalid_parameter_noinfo to keep llmozlib-vc80 happy in debug mode
// 

#ifdef _DEBUG

extern "C" {

extern  void __cdecl _invalid_parameter(
    const wchar_t *pszExpression,
    const wchar_t *pszFunction,
    const wchar_t *pszFile,
    unsigned int nLine,
    uintptr_t pReserved
    );

// code below is borrowed from 
// C:\Program Files\Microsoft Visual Studio 8\VC\crt\src\invarg.c

/* wrapper which passes no debug info; not available in debug
* used in inline code: we don't pass the null params, so we gain some
* speed and space in code generation
*/
 void __cdecl _invalid_parameter_noinfo(void)
{
	__asm int 3;	// [NB] we don't expect to actually be called (if so, raise a user exception)

	_invalid_parameter(NULL, NULL, NULL, 0, 0);
}

}

#endif

// ~HACK [Nicholas Beresford]


More information about the SLDev mailing list