You're right. I'd compiled with a different "runtime library" compiler
setting. /MDd instead of /MTd. Once I fixed that, everything was
copacetic.

Thanks,
PaulH

On Oct 30, 8:15 pm, "????????? ?????????" <a...@sibmail.ru> wrote:
> I'm also using protobuf with STLPort, but on regular win32.
> This error can occurs if you use different runtime library to build STLPort
> and your app.
>
> Hope this help,
>
> Alexander.
> --------------------------------------------------
> From: "PaulH" <paul.h...@gmail.com>
> Sent: Friday, October 30, 2009 9:45 PM
> To: "Protocol Buffers" <protobuf@googlegroups.com>
> Subject: [protobuf] protocol buffers lite on Windows Mobile
>
>
>
> > I'm using Visual Studio 2008 with STLPort 5.2.0 and the Windows Mobile
> > 5 R2 SDK to compile protobuf-2.2.0. I was able to compile libprotobuf-
> > lite.lib without much difficulty and protoc.exe has no issue compiling
> > my proto file:
>
> >    option optimize_for = LITE_RUNTIME;
>
> >    message RCMessage {
> >        required int32 version = 1;
> >    }
>
> > But, when I try to link against it in a WM5 program, I get linker
> > errors (below).
>
> > Can anybody suggest what I may be doing wrong?
>
> > Thanks,
> > PaulH
>
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "public: __cdecl
> > stlp_std::basic_string<char,class stlp_std::char_traits<char>,class
> > stlp_std::allocator<char> >::~basic_string<char,class
> > stlp_std::char_traits<char>,class stlp_std::allocator<char> >
> > (void)" (??1?$basic_str...@dv?$char_traits@d...@stlp_std@@V?
> > $alloca...@d@2@@stlp_std@@q...@xz) already defined in remote.pb.obj
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "public: __cdecl
> > stlp_std::allocator<char>::~allocator<char>(void)" (??1?
> > $alloca...@d@stlp_std@@q...@xz) already defined in remote.pb.obj
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "public: __cdecl
> > stlp_std::basic_string<char,class stlp_std::char_traits<char>,class
> > stlp_std::allocator<char> >::basic_string<char,class
> > stlp_std::char_traits<char>,class stlp_std::allocator<char> >(char
> > const *,class stlp_std::allocator<char> const &)" (??0?
> > $basic_str...@dv?$char_traits@d...@stlp_std@@V?
> > $alloca...@d@2@@stlp_std@@q...@pbdabv?$allocator@d...@1@@Z) already
> > defined in remote.pb.obj
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "public: __cdecl
> > stlp_std::allocator<char>::allocator<char>(void)" (??0?
> > $alloca...@d@stlp_std@@q...@xz) already defined in remote.pb.obj
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "public: char
> > const * __cdecl stlp_std::basic_string<char,class
> > stlp_std::char_traits<char>,class stlp_std::allocator<char> >::c_str
> > (void)const " (?c_...@?$basic_string@dv?$char_tra...@d@stlp_std@@V?
> > $alloca...@d@2@@stlp_std@@QBAPBDXZ) already defined in
> > stlportd_static.lib(dll_main.o)
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "public: __cdecl
> > stlp_std::basic_string<char,class stlp_std::char_traits<char>,class
> > stlp_std::allocator<char> >::basic_string<char,class
> > stlp_std::char_traits<char>,class stlp_std::allocator<char> >(class
> > stlp_std::allocator<char> const &)" (??0?$basic_str...@dv?
> > $char_tra...@d@stlp_std@@v?$alloca...@d@2@@stlp_std@@q...@abv?
> > $alloca...@d@1@@Z) already defined in remote.pb.obj
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "public: static
> > void __cdecl stlp_std::__node_alloc::deallocate(void *,unsigned
> > int)" (?dealloc...@__node_alloc@stlp_std@@saxp...@z) already defined
> > in remote.pb.obj
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "void __cdecl
> > stlp_std::__stl_throw_out_of_range(char const *)" (?
> > __stl_throw_out_of_ra...@stlp_std@@yax...@z) already defined in
> > stlportd_static.lib(dll_main.o)
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "public: static
> > void * __cdecl stlp_std::__node_alloc::allocate(unsigned int &)" (?
> > alloc...@__node_alloc@stlp_std@@sapax...@z) already defined in
> > remote.pb.obj
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "void __cdecl
> > stlp_std::__stl_throw_length_error(char const *)" (?
> > __stl_throw_length_er...@stlp_std@@yax...@z) already defined in
> > stlportd_static.lib(dll_main.o)
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "public: char
> > const * __cdecl stlp_std::basic_string<char,class
> > stlp_std::char_traits<char>,class stlp_std::allocator<char> >::data
> > (void)const " (?d...@?$basic_string@dv?$char_tra...@d@stlp_std@@V?
> > $alloca...@d@2@@stlp_std@@QBAPBDXZ) already defined in remote.pb.obj
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "public:
> > unsigned int __cdecl stlp_std::basic_string<char,class
> > stlp_std::char_traits<char>,class stlp_std::allocator<char> >::size
> > (void)const " (?s...@?$basic_string@dv?$char_tra...@d@stlp_std@@V?
> > $alloca...@d@2@@stlp_std@@QBAIXZ) already defined in remote.pb.obj
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "public: char *
> > __cdecl stlp_std::basic_string<char,class
> > stlp_std::char_traits<char>,class stlp_std::allocator<char> >::begin
> > (void)" (?be...@?$basic_string@dv?$char_tra...@d@stlp_std@@V?
> > $alloca...@d@2@@stlp_std@@QAAPADXZ) already defined in remote.pb.obj
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "public: bool
> > __cdecl stlp_std::basic_string<char,class
> > stlp_std::char_traits<char>,class stlp_std::allocator<char> >::empty
> > (void)const " (?em...@?$basic_string@dv?$char_tra...@d@stlp_std@@V?
> > $alloca...@d@2@@stlp_std@@QBA_NXZ) already defined in remote.pb.obj
> > 1>stlportd.5.2.lib(stlportd.5.2.dll) : error LNK2005: "public: void
> > __cdecl stlp_std::basic_string<char,class
> > stlp_std::char_traits<char>,class stlp_std::allocator<char> >::clear
> > (void)" (?cl...@?$basic_string@dv?$char_tra...@d@stlp_std@@V?
> > $alloca...@d@2@@stlp_std@@QAAXXZ) already defined in remote.pb.obj
> > 1>Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\Debug/ProtocolTest.exe :
> > fatal error LNK1169: one or more multiply defined symbols found
>
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To post to this group, send email to protobuf@googlegroups.com
To unsubscribe from this group, send email to 
protobuf+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/protobuf?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to