OK, you might want to ask on the gRPC mailing list why streams can't be used with the lite runtime. Maybe there is a plan to eventually add support for that, especially since it's common for mobile apps to use lite protos.
On Thu, Dec 6, 2018 at 7:01 AM Roy Barda <[email protected]> wrote: > Yes, according to current gRPC implementation, stream can't be used with > LITE_RUNTIME configuration in the .proto file? > > Thanks, > Roy. > > On Tue, Dec 4, 2018 at 7:19 PM Adam Cozzette <[email protected]> wrote: > >> For one Android binary I worked on recently, the protobuf runtime used >> about 135 KB of space. This was for an ARM build, and I imagine the amount >> could vary quite a bit depending on the platform and what runtime code you >> end up depending on. >> >> I'm not familiar with that gRPC issue, so you may want to ask the gRPC >> folks about that. Does the "stream" modifier prevent you from >> setting optimize_for = LITE_RUNTIME in the .proto file? >> >> On Mon, Dec 3, 2018 at 11:05 PM Roy Barda <[email protected]> wrote: >> >>> Thank you Adam for the detailed suggestion. >>> >>> 1. Can you please let me know what was the addition in KB/MB of protobuf >>> usage when you linked it statically to your Android code? >>> 2. Using libprotobuf-lite blocks me from using the "stream" modifier >>> (streaming feature) in gRPC, anyway to work around it? >>> >>> Appreciate your help, >>> Roy. >>> >>> On Tuesday, December 4, 2018 at 5:51:57 AM UTC+2, Adam Cozzette wrote: >>>> >>>> Do you plan to link statically or dynamically against the protobuf >>>> library? If you can link against it statically, I think you may find that >>>> the linker is able to remove a lot of unused code. For Android (which is an >>>> environment where we care a lot about code size), what we generally do is: >>>> - Use lite protos only (i.e. set option optimize_for = LITE_RUNTIME in >>>> every .proto file) >>>> - Link against libprotobuf-lite and not libprotobuf >>>> - Pass -ffunction-sections and -fdata-sections to the compiler and >>>> -Wl,-gc-sections to the linker to maximize the linker's ability to strip >>>> out unused code >>>> >>>> On Sun, Dec 2, 2018 at 10:34 PM Roy Barda <[email protected]> wrote: >>>> >>>>> Hi, >>>>> >>>>> I have build protobuf on my Ubuntu environment and saw that the >>>>> libraries size are extremely big. >>>>> >>>>> 28 MB for libprotobuf. >>>>> 4 MB for libprotobuf-lite >>>>> >>>>> I'm aware of nanopb project but I need to use gRPC with protobuf and >>>>> there is no good, working and maintained solution for nanopb. >>>>> >>>>> I followed the regular build process when I built protobuf (with no >>>>> special configuration) >>>>> >>>>> Is there any way to reduce the protobuf library footprint? We are >>>>> looking for a 1MB solution. >>>>> >>>>> Thanks, >>>>> >>>>> Roy. >>>>> >>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "Protocol Buffers" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to [email protected]. >>>>> To post to this group, send email to [email protected]. >>>>> Visit this group at https://groups.google.com/group/protobuf. >>>>> For more options, visit https://groups.google.com/d/optout. >>>>> >>>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Protocol Buffers" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To post to this group, send email to [email protected]. >>> Visit this group at https://groups.google.com/group/protobuf. >>> For more options, visit https://groups.google.com/d/optout. >>> >> -- You received this message because you are subscribed to the Google Groups "Protocol Buffers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/protobuf. For more options, visit https://groups.google.com/d/optout.
