nvparse link problems with visual .net

sorry if this is OT, i think it is relevant, but you never know as of late .

Since i installed visual studio .net and converted my workspaces to solutions (aside: solutions!!! what were they thinking?).

I get this when i link:

nvparse.lib(vs1.0_inst.obj) : error LNK2001: unresolved external symbol “void __cdecl std::_Xlen(void)” (?_Xlen@std@@YAXXZ)

I cant for the life of me figure out the problem… .any ideas?

I solved this recompiling nvparse with .NET

Hope this helps.

Ahhh thanks! i never thought to try that, i’m gonna go do that now

Thanks Cab, that did work.

I know have this problem which i am trying to figure out:

unresolved external symbol _glh_init_extensions

I have all the header files (again!)… hmm well i will look into it.

thanks!

Put following code in one of your *.cpp files (or even better ,imho, put it in a separate file of your project)

#define GLH_EXT_SINGLE_FILE
#include <glh_extensions.h>

I don’t remember where i read this, but it solved the same problem for me. This code initializes the extensions needed by nvparse.

hope this helps

Carl

edit: I remember now where I read this: on this forum :-). Do a search on GLH_EXT_SINGLE_FILE and you’ll find some replies from the nvidia guys concerning similar problems

[This message has been edited by dUckmAnn (edited 03-27-2002).]

[This message has been edited by dUckmAnn (edited 03-27-2002).]

Thanks, but i already had that, and it doesn’t work … i can’t for the life of me figure out why…

TextureManager.obj : error LNK2019: unresolved external symbol _nvparse_get_errors@0 referenced in function “public: bool __thiscall CTextureManager::CheckParseErrors(void)” (?CheckParseErrors@CTextureManager@@QAE_NXZ)
nvparse.lib(vp1.0_impl.obj) : error LNK2001: unresolved external symbol _glh_init_extensions
nvparse.lib(vsp1.0_impl.obj) : error LNK2001: unresolved external symbol _glh_init_extensions
nvparse.lib(vcp1.0_impl.obj) : error LNK2001: unresolved external symbol _glh_init_extensions
nvparse.lib(ps1.0_program.obj) : error LNK2019: unresolved external symbol _glh_init_extensions referenced in function “bool __cdecl ps10::init_extensions(void)” (?init_extensions@ps10@@YA_NXZ)
nvparse.lib(vs1.0_inst_list.obj) : error LNK2019: unresolved external symbol _glh_init_extensions referenced in function “void __cdecl `anonymous namespace’::LoadProgram(unsigned int,unsigned int,char *)” (?LoadProgram@?A0xd9796ed7@@YAXIIPAD@Z)
nvparse.lib(ts1.0_inst_list.obj) : error LNK2001: unresolved external symbol _glh_init_extensions
nvparse.lib(rc1.0_combiners.obj) : error LNK2001: unresolved external symbol _glh_init_extensions

This is my cpp layout:

#include <fstream>
#include <math.h>

#include <il/il.h>
#include <il/ilu.h>
#include <il/ilut.h>

#define GLH_EXT_SINGLE_FILE
#include <glh_extensions.h>

#include <nvparse.h>

#include “DebugStuff.h”
#include “Log.h”

Any ideas? This never happened in visual studio 6…

going crazy

[This message has been edited by robert (edited 03-27-2002).]

Another thing I tried when working with nvparse to eliminate link errors, was to rebuild it so that it used the same run-time lib as the project. In my case this was (Debug) Multithreaded dll ->Project settings, c/c++, category = code generation, (debug) multi-threaded dll. Or /MD (Release) /MDd (debug) if you use make-files

Carl

ps: I use MSVC 6