[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [ns] problem with using the STL with ns under Win NT





--
Free Dmitry Sklyarov ! 
http://www.freesklyarov.org

> -----Original Message-----
> From:	Jonathan Clark []
> Sent:	Tuesday, October 23, 2001 9:49 AM
> To:	[email protected]
> Subject:	[ns] problem with using the STL with ns under Win NT
> 
> This symbol is supplied by MSVCP60.DLL and is need by the standard template
> library (MS's version anyway) to support map<>.   You need to link with one
> of the following:
> 
> libcp.lib
> libcpd.lib
> libcpmt.lib
> libcpmtd.lib
> msvcprt.lib
> msvcprtd.lib
> 
> Jonathan
> 
> >>>>>
> Hi,
> 
> I use in some classes the vector<> class from the STL, and it works.
> Now I added two maps (map<int, int, less<int> > and map<int, PacketQueue*,
> less<int> >) and now it doesn't link anymore :-(
> I'm using VC++.
> 
> queue.o : error LNK2001: unresolved external symbol "__declspec(dllimport)
> public: __thiscall std::_Lockit::~_Lockit(void)"
> (__imp_??1_Lockit@std@@AE@XC)
> and the same for std::_Lockit::_Lockit(void)
> 
> I don't use any class called Lockit anywhere in my code, so where might it
> come from, what can I do ?
> 
> Thanks
> Alex
> 
	I had the same problem.
	The cause is that in the windows makefile the switch -D_MT is used (I assume _MT as in multithreading, and the LockIt thingy locks something). But ns ain't multithreaded :-/
	I put an "#undef _MT everywhere where required to make it link. Not exactly a fix, but it works.

	Bye
	Alex