The issue is import paths - the pre-generated versions of
descriptor.pb.{h,cc} are generated relative to the source root. Instead of
importing "descriptor.proto", you should have something like

import "google/protobuf/descriptor.proto";

This should make the code generator reference the declared functions in
descriptor.pb.h<http://code.google.com/p/protobuf/source/browse/trunk/src/google/protobuf/descriptor.pb.h#33>.
(And this way you should have separate directories for your code and the
google protobuf code)

On Fri, May 25, 2012 at 11:41 AM, Dan <dashegh...@gmail.com> wrote:

> Perhaps I am just missing something, however I am getting a compiler error
> that appears to be an issue with descriptor.pb.h.
>
> The error is this: "protobuf_AddDesc_descriptor_2eproto is not a member of
> google::protobuf", called from "void
> MyPackageName::protobuf_AddDesc_MyMessage_2eproto()".
> Basically, MyMessage looks like this:
>
> package MyPackageName;
> import "descriptor.proto";
>
> option optimize_for = SPEED;
>
> message MyMessage
> {
>     optional google.protobuf.FileDescriptorSet proto_set = 1;
> }
>
> Looking at the effect of other "import" statements I have made, it looks
> like the method should have been defined in descriptor.pb.h. It is not, and
> it does not appear that I should try to compile descriptor.proto myself.
>
> I am using version 2.4.1 of the protobuf library, and as you've probably
> guessed, trying to compile C++.
> Any ideas on how to fix this?
>
> thanks in advance,
> Dan
>
> --
> You received this message because you are subscribed to the Google Groups
> "Protocol Buffers" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/protobuf/-/AcHuNhBnkzgJ.
> 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.
>

-- 
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