[ace-users] link fail on "ACE_Thread_Mutex.h"
Douglas C. Schmidt
schmidt at dre.vanderbilt.edu
Mon Aug 6 07:32:07 CDT 2007
Hi,
> Yes, I am using visual studio 2005 on my windows.
> I can compile a simple network program based on ACE_SOCK_Stream and
> ACE_SOCK_COnnector, and so on. However, I cannot complie the same code
> including ACE_Thread_Manager or ACE_TSS template.
Please do the following:
. Upgrade to TAO 1.5.10, as per my instructions below.
. Try compiling/running the ACE_ROOT/tests, as per my instructions below.
Thanks,
Doug
> - jeong ho
>
> On 8/6/07, Douglas C. Schmidt <schmidt at dre.vanderbilt.edu> wrote:
> >
> > Hi,
> >
> > Thanks for using the PRF.
> >
> > > ACE VERSION: 5.5
> >
> > Please upgrade to ACE+TAO+CIAO x.5.10 (i.e., ACE 5.5.10, TAO 1.5.10, and
> > CIAO 0.5.10), which you can download from
> >
> > http://download.dre.vanderbilt.edu
> >
> > under the heading: "Latest Beta Kit".
> >
> > The DOC groups at Washington University, UC Irvine, and Vanderbilt
> > University only provide "best effort" support for non-sponsors for the
> > latest release, as described in
> >
> > http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/docs/ACE-bug-process.html
> >
> > Thus, if you need more "predictable" help for earlier versions of
> > ACE+TAO, I recommend that you check out
> >
> > http://www.dre.vanderbilt.edu/support.html
> >
> > for a list of companies that will provide you with ACE+TAO commercial
> > support.
> >
> > > HOST MACHINE and OPERATING SYSTEM:
> > > Host Machine: Intel Centrio Duo 2GHz meory 1.5GB
> > > OS: Windows Professional SP2
> >
> > Which C++ compiler are you using on Windows?
> >
> > > TARGET MACHINE and OPERATING SYSTEM: Same with Host Machine and OS
> > >
> > > THE $ACE_ROOT/ace/config.h FILE
> > >
> > > #define ACE_HAS_STANDARD_CPP_LIBRARY 1
> > > #define ACE_HAS_MFC 1
> > > #define ACE_NO_INLINE
> > > #include "ace/config-win32.h"
> > >
> > > AREA/CLASS/EXAMPLE AFFECTED:
> > > ACE_TSS/ACE_Thread_Mutex
> > >
> > > DOES THE PROBLEM AFFECT:
> > > LINKING
> > >
> > > SYNOPSIS:
> > > linking error is occurred in the compile time
> > >
> > > error LNK2019: unresolved external simbol "__declspec(dllimport)
> > > public: __thiscall ACE_Thread_Mutex::ACE_Thread_Mutex(wchar_t const
> > > *,struct ACE_mutexattr_t *)"
> > > (__imp_??0ACE_Thread_Mutex@@QAE at PB_WPAUACE_mutexattr_t@@@Z) in
> > > (reference position: "public: __thiscall
> > > ACE_TSS<int>::ACE_TSS<int>(int *)" (??0?$ACE_TSS at H@@QAE at PAH@Z)
> > > function)
> > >
> > >
> > > DESCRIPTION:
> > > I am writting a thread-based application using ACE_TSS. However,
> > > I cannot compile my test code because of link failure. My test code is
> > > as follows:
> > >
> > > #include "stdafx.h"
> > > #include "ace/init_ACE.h"
> > > #include "ace/TSS_T.h"
> > > #include "ace/SOCK_Stream.h"
> > >
> > > using namespace std;
> > >
> > > ACE_Thread_Mutex m;
> > >
> > > int main(void)
> > > {
> > > ACE::init();
> > > ACE_SOCK_Stream sock;
> > >
> > >
> > > ACE_TSS<int> tss;
> > > ACE::fini();
> > > return 0;
> > > }
> > >
> > > I do not think it is caused by the compiler missconfiguration. If I
> > > comment out the like "ACE_TSS<int> tss," it works. Please give me any
> > > clue to solve my problem.
> >
> > Please see
> >
> > ACE_ROOT/tests/TSS_Test.cpp
> >
> > for an example of how to use ACE_TSS. Make sure this compiles/runs
> > properly on your platform first and then use it as a model for writing
> > your code.
> >
> > Thanks,
> >
> > Doug
> >
> >
>
> _______________________________________________
> ace-users mailing list
> ace-users at mail.cse.wustl.edu
> http://mail.cse.wustl.edu/mailman/listinfo/ace-users
More information about the Ace-users
mailing list