Sign in to follow this  
warp X

I can't figure this out

Recommended Posts

warp X    192
I am getting these strange linker errors: FreakoutVSdotNET2003_1 error LNK2001: unresolved external symbol @_RTC_CheckStackVars@8 FreakoutVSdotNET2003_1 error LNK2001: unresolved external symbol __RTC_CheckEsp FreakoutVSdotNET2003_1 error LNK2001: unresolved external symbol __RTC_InitBase FreakoutVSdotNET2003_1 error LNK2001: unresolved external symbol __RTC_InitBase FreakoutVSdotNET2003_1 error LNK2001: unresolved external symbol __RTC_Shutdown FreakoutVSdotNET2003_1 error LNK2001: unresolved external symbol __RTC_Shutdown FreakoutVSdotNET2003_1 error LNK2019: unresolved external symbol @_RTC_CheckStackVars@8 referenced in function "int __cdecl DD_Init(int,int,int)" (?DD_Init@@YAHHHH@Z) FreakoutVSdotNET2003_1 error LNK2019: unresolved external symbol __RTC_CheckEsp referenced in function "int __cdecl DD_Init(int,int,int)" (?DD_Init@@YAHHHH@Z) FreakoutVSdotNET2003_1 fatal error LNK1120: 4 unresolved externals Can anyone help me? Have I forgot to include a lib or something like that? I am trying to compile the Freakout example from "Tricks of the Windows game programming gurus" with VS.NET 2003. The code is in C/C++.

Share this post


Link to post
Share on other sites
You forgot to link with either a lib or some other translation unit(s). Unfortunatly, I don't know TWGPG enough to be able to exactly tell you what is missing. Where do these RTC_* function come from?

Regards,

Share this post


Link to post
Share on other sites
Sandman    2210
The missing symbols are part of the RunTime Check system which are called depending on certain compiler settings.

Go to Projects->Properties->C/C++->Code Generation and check the settings in there - particularly the 'Basic Runtime Checks' and the 'Runtime Library' settings. You may have a nonsensical combination in there which is causing these problems. It may also be that your library path is pointing at an out of date C Runtime Library - check the library paths under tools->options->Projects->VC++ Directories->Library files, and make sure you've got the most recent files at the top of the list.

Share this post


Link to post
Share on other sites
warp X    192
Thanks, sandman, that worked. Got it compiled and runnin'. It was just really strange beacause it compiled ok with vc++ 6.0 straight out.

Share this post


Link to post
Share on other sites
vietdoor    122
With that code, we can run on Studio.net ?

I had a source called by decklinkframesource. This code communicate with DeckLink card (Graphic card).

I can't compile it on Studio.net . I got some errors the same as

CustomAllocator.obj : error LNK2019: unresolved external symbol __RTC_CheckEsp referenced in function "public: static class CUnknown * __stdcall CCustomAllocator::CreateInstance(struct IUnknown *,long *)" (?CreateInstance@CCustomAllocator@@SGPAVCUnknown@@PAUIUnknown@@PAJ@Z)
DecklinkFrameSource.obj : error LNK2019: unresolved external symbol __RTC_CheckEsp referenced in function "public: __thiscall CDecklinkPushPin::CDecklinkPushPin(long *,class CSource *)" (??0CDecklinkPushPin@@QAE@PAJPAVCSource@@@Z)
setup.obj : error LNK2001: unresolved external symbol __RTC_CheckEsp
CustomAllocator.obj : error LNK2001: unresolved external symbol __RTC_Shutdown
DecklinkFrameSource.obj : error LNK2001: unresolved external symbol __RTC_Shutdown
setup.obj : error LNK2001: unresolved external symbol __RTC_Shutdown
CustomAllocator.obj : error LNK2001: unresolved external symbol __RTC_InitBase
DecklinkFrameSource.obj : error LNK2001: unresolved external symbol __RTC_InitBase

Share this post


Link to post
Share on other sites
Guest Anonymous Poster   
Guest Anonymous Poster
Your linker is finding MSVCRT.LIB that came from Visual Studio 6.


1. Locate all MSVCRT.LIB in your hard drive


2. There should only be one copy in each compilers directory


3. Check your Library directories. Your new compiler may be finding the old MSVC 6 libraries first.


4. If all else fails, copy the VC7/Lib/MSVCRT.LIB to your project directory. That should override everything else.


The RTC_ functions are when you enable Basic Runtime checks

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this