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 [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/protobuf?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to