README.txt 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. This directory contains example code that uses Protocol Buffers to manage an
  2. address book. Two programs are provided, each with three different
  3. implementations, one written in each of C++, Java, and Python. The add_person
  4. example adds a new person to an address book, prompting the user to input
  5. the person's information. The list_people example lists people already in the
  6. address book. The examples use the exact same format in all three languages,
  7. so you can, for example, use add_person_java to create an address book and then
  8. use list_people_python to read it.
  9. You must install the protobuf package before you can build these.
  10. To build all the examples (on a unix-like system), simply run "make". This
  11. creates the following executable files in the current directory:
  12. add_person_cpp list_people_cpp
  13. add_person_java list_people_java
  14. add_person_python list_people_python
  15. If you only want to compile examples in one language, use "make cpp"*,
  16. "make java", or "make python".
  17. All of these programs simply take an address book file as their parameter.
  18. The add_person programs will create the file if it doesn't already exist.
  19. These examples are part of the Protocol Buffers tutorial, located at:
  20. https://developers.google.com/protocol-buffers/docs/tutorials
  21. * Note that on some platforms you may have to edit the Makefile and remove
  22. "-lpthread" from the linker commands (perhaps replacing it with something else).
  23. We didn't do this automatically because we wanted to keep the example simple.
  24. ## Go ##
  25. The Go example requires a plugin to the protocol buffer compiler, so it is not
  26. build with all the other examples. See:
  27. https://github.com/golang/protobuf
  28. for more information about Go protocol buffer support.
  29. First, install the Protocol Buffers compiler (protoc).
  30. Then, install the Go Protocol Buffers plugin
  31. ($GOPATH/bin must be in your $PATH for protoc to find it):
  32. go get github.com/golang/protobuf/protoc-gen-go
  33. Build the Go samples in this directory with "make go". This creates the
  34. following executable files in the current directory:
  35. add_person_go list_people_go
  36. To run the example:
  37. ./add_person_go addressbook.data
  38. to add a person to the protocol buffer encoded file addressbook.data. The file
  39. is created if it does not exist. To view the data, run:
  40. ./list_people_go addressbook.data
  41. Observe that the C++, Python, and Java examples in this directory run in a
  42. similar way and can view/modify files created by the Go example and vice
  43. versa.