[ace-users] Linking problem with VisualC++ Express on Windows Vista

Douglas C. Schmidt schmidt at dre.vanderbilt.edu
Sat Sep 15 08:18:12 CDT 2007


Hi,

>I am new to C++ and ACE and am facing some linking problems while
>trying to build a simple example project on Windows Vista using VisualC
>++ Express.

To ensure that we have proper version/platform/compiler
information, please make sure you fill out the appropriate problem
report form (PRF), which is in

$ACE_ROOT/PROBLEM-REPORT-FORM
$TAO_ROOT/PROBLEM-REPORT-FORM

or in

$ACE_ROOT/BUG-REPORT-FORM
$TAO_ROOT/BUG-REPORT-FORM

in older versions of ACE+TAO.  Make sure to include this information
when asking any questions about ACE+TAO since otherwise we have to
"guess" what version/platform/compiler/options you've using, which is
very error-prone and slows down our responsiveness.  If you don't use
the PRF, therefore, it is less likely that someone from the core
ACE+TAO developer team will be able to answer your question.
Naturally, we encourage and appreciate other members of the ACE+TAO
user community who can respond to questions that they have the answers
to.

Thanks,

        Doug


>I managed to install and compile ACE without any problems. In order to
>see if everything is set up correctly I then created a separate
>project where I imported the Future1 example (ace\ACE_wrappers\examples
>\Threads\future1.cpp). I configured the ACE_ROOT and PATH environment
>variables and added the paths and ACE.lib in the properties for the
>project. When I try to build the solution I get the linking errors
>shown below. I have tried changing the settings a number of ways
>without any success, and suspect there is some basic step/setting that
>I have missed. Can someone point me in the right direction?
>
>-----------------------------------------------------------------------------
>COMMAND LINES:
>Creating temporary file "c:\acd\workspace\dc2\dc2\Debug
>\RSP00003B55527920.rsp" with contents
>[
>/Od /I "C:\acd\dev\ace\ACE_wrappers" /D "WIN32" /D "_DEBUG" /D
>"_CONSOLE" /D "_UNICODE" /D "UNICODE" /Gm /EHsc /RTC1 /MDd /Fo"Debug\
>\" /Fd"Debug\vc80.pdb" /W3 /c /Wp64 /ZI /TP .\futuretest.cpp
>]
>Creating command line "cl.exe @c:\acd\workspace\dc2\dc2\Debug
>\RSP00003B55527920.rsp /nologo /errorReport:prompt"
>Creating temporary file "c:\acd\workspace\dc2\dc2\Debug
>\TMP00003C55527920.tmp" with contents
>[
>1 /* CREATEPROCESS_MANIFEST_RESOURCE_ID */ 24 /* RT_MANIFEST */ ".\
>\Debug\\dc2.exe.embed.manifest"
>]
>Creating command line "rc.exe /fo".\Debug\dc2.exe.embed.manifest.res"
>c:\acd\workspace\dc2\dc2\Debug\TMP00003C55527920.tmp"
>Creating temporary file "c:\acd\workspace\dc2\dc2\Debug
>\RSP00003D55527920.rsp" with contents
>[
>/OUT:"C:\acd\workspace\dc2\Debug\dc2.exe" /INCREMENTAL /LIBPATH:"C:\acd
>\dev\ace\ACE_wrappers\lib" /MANIFEST /MANIFESTFILE:"Debug
>\dc2.exe.intermediate.manifest" /DEBUG /PDB:"c:\acd\workspace\dc2\debug
>\dc2.pdb" /SUBSYSTEM:CONSOLE /MACHINE:X86 ACE.lib kernel32.lib
>user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib
>shell32.lib ole32.lib oleaut32.lib uuid.lib
>
>".\debug\futuretest.obj"
>
>".\Debug\dc2.exe.embed.manifest.res"
>]
>Creating command line "link.exe @c:\acd\workspace\dc2\dc2\Debug
>\RSP00003D55527920.rsp /NOLOGO /ERRORREPORT:PROMPT"
>-----------------------------------------------------------------------------
>
>The errors I get in the output are:
>
>-----------------------------------------------------------------------------
>Compiling...
>futuretest.cpp
>Compiling manifest to resources...
>Linking...
>   Creating library C:\acd\workspace\dc2\Debug\dc2.lib and object C:
>\acd\workspace\dc2\Debug\dc2.exp
>futuretest.obj : error LNK2019: unresolved external symbol "public:
>virtual __thiscall ACE_Method_Request::~ACE_Method_Request(void)" (??
>1ACE_Method_Request@@UAE at XZ) referenced in function __unwindfunclet$??
>0Method_Request_work@@QAE at PAVScheduler@@KHAAV?$ACE_Future at K@@@Z$0
>futuretest.obj : error LNK2019: unresolved external symbol "public:
>int __cdecl ACE_Log_Msg::log(enum ACE_Log_Priority,char const
>*,...)" (?log at ACE_Log_Msg@@QAAHW4ACE_Log_Priority@@PBDZZ) referenced
>in function "public: __thiscall
>Method_Request_work::Method_Request_work(class Scheduler *,unsigned
>long,int,class ACE_Future &)" (??
>0Method_Request_work@@QAE at PAVScheduler@@KHAAV?$ACE_Future at K@@@Z)
>futuretest.obj : error LNK2019: unresolved external symbol "public:
>void __thiscall ACE_Log_Msg::conditional_set(char const
>*,int,int,int)" (?conditional_set at ACE_Log_Msg@@QAEXPBDHHH at Z)
>referenced in function "public: __thiscall
>Method_Request_work::Method_Request_work(class Scheduler *,unsigned
>long,int,class ACE_Future &)" (??
>0Method_Request_work@@QAE at PAVScheduler@@KHAAV?$ACE_Future at K@@@Z)
>...
>...
>futuretest.obj : error LNK2019: unresolved external symbol "public:
>static class ACE_Allocator * __cdecl ACE_Allocator::instance(void)" (?
>instance at ACE_Allocator@@SAPAV1 at XZ) referenced in function "public:
>__thiscall ACE_Unbounded_Set *>::ACE_Unbounded_Set *>(class
>ACE_Allocator *)" (??0?$ACE_Unbounded_Set at PAV?
>$ACE_Future_Observer at K@@@@QAE at PAVACE_Allocator@@@Z)
>C:\acd\workspace\dc2\Debug\dc2.exe : fatal error LNK1120: 76
>unresolved externals
>-----------------------------------------------------------------------------
>


-- 
Dr. Douglas C. Schmidt                       Professor and Associate Chair
Electrical Engineering and Computer Science  TEL: (615) 343-8197
Vanderbilt University                        WEB: www.dre.vanderbilt.edu/~schmidt
Nashville, TN 37203                          NET: d.schmidt at vanderbilt.edu



More information about the Ace-users mailing list