Link errors while building VC6 project using VC++ Toolkit 2003

G

Guest

I have been trying to use the new Visual C++ Toolkit 2003 with the VC6 IDE
I set up the executable, inlcude, and library directories to point to the new compilers
I had to fix a few errors in the MFC6 <afxtempl.h> to get it to compile with the better standards confomance (mainly omitted typename, and lazyness with specialized templates - using BASE_CLASS & TYPE instead of CObList & CObList*)
Now I get some strange linker errors, and I don't know much about linker errors :-

Here's my linker output (for debug)
--------------------Configuration: WinCPUID - Win32 Debug-------------------
Linking..
Microsoft (R) Incremental Linker Version 7.10.305
Copyright (C) Microsoft Corporation. All rights reserved
/subsystem:windows /incremental:yes "/pdb:Debug/WinCPUID.pdb" /debug /machine:I386 "/out:Debug/WinCPUID.exe"
".\Debug\Clouds.obj"
".\Debug\CPUData.obj"
".\Debug\CustomPropSheet.obj"
".\Debug\file_ver.obj"
".\Debug\PropPageAbout.obj"
".\Debug\PropPageCPUID.obj"
".\Debug\PropPageInfo.obj"
".\Debug\StdAfx.obj"
".\Debug\WinCPUID.obj"
".\Debug\WinCPUID.res"
PropPageAbout.obj : error LNK2001: unresolved external symbol __RTC_CheckEs
PropPageCPUID.obj : error LNK2001: unresolved external symbol __RTC_CheckEs
PropPageInfo.obj : error LNK2001: unresolved external symbol __RTC_CheckEs
WinCPUID.obj : error LNK2001: unresolved external symbol __RTC_CheckEs
Clouds.obj : error LNK2019: unresolved external symbol __RTC_CheckEsp referenced in function "public: __thiscall CCloudsCtrl::CCloudsCtrl(void)" (??0CCloudsCtrl@@QAE@XZ
CPUData.obj : error LNK2001: unresolved external symbol __RTC_CheckEs
CustomPropSheet.obj : error LNK2001: unresolved external symbol __RTC_CheckEs
file_ver.obj : error LNK2001: unresolved external symbol __RTC_CheckEs
PropPageAbout.obj : error LNK2001: unresolved external symbol __RTC_Shutdow
PropPageCPUID.obj : error LNK2001: unresolved external symbol __RTC_Shutdow
PropPageInfo.obj : error LNK2001: unresolved external symbol __RTC_Shutdow
WinCPUID.obj : error LNK2001: unresolved external symbol __RTC_Shutdow
Clouds.obj : error LNK2001: unresolved external symbol __RTC_Shutdow
CPUData.obj : error LNK2019: unresolved external symbol __RTC_Shutdown referenced in function "public: int __thiscall CCPUData::Update(void)" (?Update@CCPUData@@QAEHXZ
CustomPropSheet.obj : error LNK2001: unresolved external symbol __RTC_Shutdow
file_ver.obj : error LNK2001: unresolved external symbol __RTC_Shutdow
PropPageAbout.obj : error LNK2001: unresolved external symbol __RTC_InitBas
PropPageCPUID.obj : error LNK2001: unresolved external symbol __RTC_InitBas
PropPageInfo.obj : error LNK2001: unresolved external symbol __RTC_InitBas
WinCPUID.obj : error LNK2001: unresolved external symbol __RTC_InitBas
Clouds.obj : error LNK2001: unresolved external symbol __RTC_InitBas
CPUData.obj : error LNK2001: unresolved external symbol __RTC_InitBas
CustomPropSheet.obj : error LNK2001: unresolved external symbol __RTC_InitBas
file_ver.obj : error LNK2001: unresolved external symbol __RTC_InitBas
PropPageAbout.obj : error LNK2019: unresolved external symbol @_RTC_CheckStackVars@8 referenced in function "public: __thiscall CPropPageAbout::CPropPageAbout(void)" (??0CPropPageAbout@@QAE@XZ
PropPageCPUID.obj : error LNK2001: unresolved external symbol @_RTC_CheckStackVars@
WinCPUID.obj : error LNK2001: unresolved external symbol @_RTC_CheckStackVars@
Clouds.obj : error LNK2019: unresolved external symbol @_RTC_CheckStackVars@8 referenced in function "protected: virtual void __thiscall CCloudsCtrl::preSubclassWindow(void)" (?PreSubclassWindow@CCloudsCtrl@@MAEXXZ
CPUData.obj : error LNK2001: unresolved external symbol @_RTC_CheckStackVars@
CustomPropSheet.obj : error LNK2001: unresolved external symbol @_RTC_CheckStackVars@
file_ver.obj : error LNK2019: unresolved external symbol @_RTC_CheckStackVars@8 referenced in function "public: __thiscall CFileVersionInfo::CFileVersionInfo(void)" (??0CFileVersionInfo@@QAE@XZ
Clouds.obj : error LNK2019: unresolved external symbol __ftol2 referenced in function "protected: void __thiscall CCloudsCtrl::GeneratePlasma(int * const)" (?GeneratePlasma@CCloudsCtrl@@IAEXQAH@Z
file_ver.obj : error LNK2019: unresolved external symbol _VerQueryValueA@16 referenced in function "public: int __thiscall CFileVersionInfo::ReadVersionInfo(class CString const &)" (?ReadVersionInfo@CFileVersionInfo@@QAEHABVCString@@@Z)
file_ver.obj : error LNK2019: unresolved external symbol _GetFileVersionInfoA@16 referenced in function "public: int __thiscall CFileVersionInfo::ReadVersionInfo(class CString const &)" (?ReadVersionInfo@CFileVersionInfo@@QAEHABVCString@@@Z)
file_ver.obj : error LNK2019: unresolved external symbol _GetFileVersionInfoSizeA@8 referenced in function "public: int __thiscall CFileVersionInfo::ReadVersionInfo(class CString const &)" (?ReadVersionInfo@CFileVersionInfo@@QAEHABVCString@@@Z)
Debug/WinCPUID.exe : fatal error LNK1120: 8 unresolved externals
Error executing link.exe.

For Release:
--------------------Configuration: WinCPUID - Win32 Release--------------------
Linking...
Clouds.obj : error LNK2019: unresolved external symbol __ftol2 referenced in function "protected: int __thiscall CCloudsCtrl::GetRandomValue(int,int)" (?GetRandomValue@CCloudsCtrl@@IAEHHH@Z)
Clouds.obj : error LNK2019: unresolved external symbol "void __cdecl operator delete[](void *)" (??_V@YAXPAX@Z) referenced in function "public: virtual __thiscall CCloudsCtrl::~CCloudsCtrl(void)" (??1CCloudsCtrl@@UAE@XZ)
WinCPUID.obj : error LNK2001: unresolved external symbol "void __cdecl operator delete[](void *)" (??_V@YAXPAX@Z)
Clouds.obj : error LNK2019: unresolved external symbol "void * __cdecl operator new[](unsigned int)" (??_U@YAPAXI@Z) referenced in function "protected: virtual void __thiscall CCloudsCtrl::preSubclassWindow(void)" (?PreSubclassWindow@CCloudsCtrl@@MA
EXXZ)
file_ver.obj : error LNK2001: unresolved external symbol "void * __cdecl operator new[](unsigned int)" (??_U@YAPAXI@Z)
WinCPUID.obj : error LNK2001: unresolved external symbol "void * __cdecl operator new[](unsigned int)" (??_U@YAPAXI@Z)
Release/WinCPUID.exe : fatal error LNK1120: 3 unresolved externals
Error executing link.exe.

How can I fix these?

---
Leith Bade
Project Admin
WinCPUID
(e-mail address removed)
wincpuid.sourceforge.net
 
D

David Lowndes

I have been trying to use the new Visual C++ Toolkit 2003 with the VC6 IDE.
I set up the executable, inlcude, and library directories to point to the new compilers.
Now I get some strange linker errors, and I don't know much about linker errors :-(

Here's my linker output (for debug):
..
PropPageAbout.obj : error LNK2001: unresolved external symbol __RTC_CheckEsp

Looks like you might still be linking with the V6 libraries.

Dave
 
A

alixia

I´m still having the problem:
error LNK2019: unresolved external symbol __ftol2

I´ve proved to put the next lines of code in my c file:

#if (_MSC_VER >= 1300) && (WINVER < 0x0500)
//VC7 or later, building with pre-VC7 runtime libraries
extern "C" long _ftol( double ); //defined by VC6 C libs
extern "C" long _ftol2( double dblSource ) { return _ftol( dblSource );
}
#endif

but now the problem is the string "C", it isn´t recognized by the
compiler maybe. I´ve installed the microsotf c++ 2003 toolkit.
I don´t understand.
 
J

Jochen Kalmbach [MVP]

Hi alixia!
#if (_MSC_VER >= 1300) && (WINVER < 0x0500)
//VC7 or later, building with pre-VC7 runtime libraries
extern "C" long _ftol( double ); //defined by VC6 C libs
extern "C" long _ftol2( double dblSource ) { return _ftol( dblSource );
}
#endif

but now the problem is the string "C", it isn´t recognized by the
compiler maybe. I´ve installed the microsotf c++ 2003 toolkit.
I don´t understand.

Why do you query WINVER?
If it is only depended on the MS-VC-Version you should only query _MSC_VER!

But to comply with C-files, you should change it to:


#if _MSC_VER >= 1300
//VC7 or later, building with pre-VC7 runtime libraries
#ifdef __cplusplus
extern "C" {
#endif
long _ftol( double ); //defined by VC6 C libs
long _ftol2( double dblSource ) { return _ftol( dblSource );
#ifdef __cplusplus
}
#endif
#endif


--
Greetings
Jochen

My blog about Win32 and .NET
http://blog.kalmbachnet.de/
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top