Archived
This forum has been archived. Please start a new discussion on GitHub.
problem to build demos with VC 6.0
in Help Center
Hi,there:
When I build the ICE demo such as Latency example with VC6.0, it failed,it can not resolve external symbol while linking. But it works with Visual Studio .net.
I checked the project setting: the iced.lib iceutild.lib are there and in the menu tool\option directories tab I set the lib path to the ice lib path,did I miss anything else? Compiling was ok.
The error messages look like this:
Client.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall IceProxy::Ice::Object::ice_ping(class std::map<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,struct std::less<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::allocator<class std::basic_string<char,struct std::char
.....
Latency.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: bool __thiscall IceProxy::Ice::Object::ice_isA(class std::basic_string<char,struct std::char_traits<char>,class
.......
Thanks!
When I build the ICE demo such as Latency example with VC6.0, it failed,it can not resolve external symbol while linking. But it works with Visual Studio .net.
I checked the project setting: the iced.lib iceutild.lib are there and in the menu tool\option directories tab I set the lib path to the ice lib path,did I miss anything else? Compiling was ok.
The error messages look like this:
Client.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall IceProxy::Ice::Object::ice_ping(class std::map<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,struct std::less<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::allocator<class std::basic_string<char,struct std::char
.....
Latency.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: bool __thiscall IceProxy::Ice::Object::ice_isA(class std::basic_string<char,struct std::char_traits<char>,class
.......
Thanks!
0
Comments
-
This looks to me as if STLport is either not found during compilation, linking, or execution:
- Make sure that during compilation you have STLport's include/stlport directory in your INCLUDE path. (Note: Just using STLport's include directory won't work.)
- Make sure that the linker can find the STLport library.
- Make sure that the STLport DLL is in your PATH.
Hope this helps!0 -
I tried as you said,it still can not work out. I am wondering why it works in Visual studio.net, I didn't install STLport at that time,but it works fine. It's kind of wierd,but anyway I can build it in visual studio.net.
Thanks!0 -
Well, with Visual C++ .NET, you don't need STLport. You only need STLport with Visual C++ 6.0.
Perhaps you mixed Ice libraries compiled with Visual C++ .NET with code compiled with Visual C++ 6.0?0 -
Yeah you might make the point. The iced.lib and iceutild.lib I used is from the binary package which is download from your web site,I think it is build in visual studio.net.
Thanks!0 -
That's correct. You cannot use the binary package with Visual C++ 6.0. You must compile Ice with Visual C++ 6.0 and STLport.0