No Description

Joshua Haberman 74638a253e Merge pull request #2047 from jonathon-love/master 9 years ago
benchmarks b661fb5000 Add the missing maintiner-clean entry for benchmarks 9 years ago
cmake 56b8f44eed Merge pull request #1842 from udnaan/master 9 years ago
conformance 80f65d2df8 Add note about JSON tests maybe being wrong. (#1992) 9 years ago
csharp 9b8da104c1 Rm check on dependency in the C# reflection API (#2051) 9 years ago
docs 4d04fcdaf6 Add an Erlang project, gpb, to third_party.md 9 years ago
editors ddf6d1eb75 [master] Add dependency cl. Fixes google/protobuf#295. 9 years ago
examples 9086d96439 Integrate from internal code base. 9 years ago
java 30647cae9f Use 64-bit protoc binaries in compatibility tests. 9 years ago
javanano b6dec9b8d4 update the OSGi SymbolicName and ExportedPackage for the javanano library 9 years ago
jenkins 20fbb357d0 Add more tests to jenkins. 9 years ago
js ea081fe220 Fix missing import of jspb.Map (#1885) 9 years ago
m4 fe066bd514 Merge pull request #789 from motahan/solaris64_fix 10 years ago
more_tests 7db148f92a Add makefile for extended tests to be run before release. 16 years ago
objectivec 13a41246dd Make Root's +extensionRegistry generation smarter. 9 years ago
php 3808d091f8 Fix spelling in strings and comments 9 years ago
protoc-artifacts 6a59ac94e1 Fix the build-zip.sh to add .exe for win packages. 9 years ago
python 64958cdb1d Fix to typo/oversight in python tests 9 years ago
ruby 3a674ffe05 upb bugfix: JSON map entry keys were passing the wrong closure. 9 years ago
src 7c3f7c6a09 Fix #1955 clang-tidy warning misc-macro-parentheses 9 years ago
util 985c968443 Remove hack for building Python support with Bazel. 9 years ago
.gitignore 80f65d2df8 Add note about JSON tests maybe being wrong. (#1992) 9 years ago
.travis.yml baa4023cd5 Run Java compatibility tests on Travis. 9 years ago
BUILD faea19c359 Bazel: export LICENSE file. 9 years ago
CHANGES.txt e0d817e0de Change log for 3.0 GA release. 9 years ago
CONTRIBUTORS.txt 49bc8c0963 Add nano proto authors and update LICENSE file to include Android.mk. 11 years ago
LICENSE 2a50e67c78 Add support for POWER Linux 10 years ago
Makefile.am 13a41246dd Make Root's +extensionRegistry generation smarter. 9 years ago
Protobuf.podspec 275db044b2 Adds watch os deployment target for protobuf 9 years ago
README.md f8c37b97da Add a jenkins test status badge. 9 years ago
WORKSPACE a9244ca0df add java/util support based on java/util/pom.xml 9 years ago
appveyor.bat 10a8fb4e73 Move to dotnet cli for building, and .NET Core (netstandard1.0) as target platform (#1727) 9 years ago
appveyor.yml c4a84abcb6 Update links in appveyor.yml 9 years ago
autogen.sh bba446bbf2 Update gmock links. 9 years ago
configure.ac fb7a7c5f1f Bump version number for GA 9 years ago
generate_descriptor_proto.sh 0de06f54bc Merge branch 'master' of github.com:google/protobuf 9 years ago
gmock.BUILD cc42db83d3 Fix headers for gmock.BUILD 10 years ago
post_process_dist.sh 9dcd24df10 Add js to post_process_dist.sh. 10 years ago
protobuf-lite.pc.in 37e7a3c4b8 Uncomment conflict fields from pkg-config files. 10 years ago
protobuf.bzl 02cd45ca35 Bazel build: Keep generated sources and Python runtime in the same directory. 9 years ago
protobuf.pc.in 37e7a3c4b8 Uncomment conflict fields from pkg-config files. 10 years ago
six.BUILD 29799238c2 Add srcs_version = "PY2AND3" in BUILD files 10 years ago
tests.sh baa4023cd5 Run Java compatibility tests on Travis. 9 years ago
update_file_lists.sh ff7bdad231 Fix bugs on windows 10 years ago

README.md

Protocol Buffers - Google's data interchange format

Build Status Build status Build Status

Copyright 2008 Google Inc.

https://developers.google.com/protocol-buffers/

Overview

Protocol Buffers (a.k.a., protobuf) are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data. You can find protobuf's documentation on the Google Developers site.

This README file contains protobuf installation instructions. To install protobuf, you need to install the protocol compiler (used to compile .proto files) and the protobuf runtime for your chosen programming language.

Protocol Compiler Installation

The protocol compiler is written in C++. If you are using C++, please follow the C++ Installation Instructions to install protoc along with the C++ runtime.

For non-C++ users, the simplest way to install the protocol compiler is to download a pre-built binary from our release page:

https://github.com/google/protobuf/releases

In the downloads section of each release, you can find pre-built binaries in zip packages: protoc-$VERSION-$PLATFORM.zip. It contains the protoc binary as well as a set of standard .proto files distributed along with protobuf.

If you are looking for an old version that is not available in the release page, check out the maven repo here:

http://repo1.maven.org/maven2/com/google/protobuf/protoc/

These pre-built binaries are only provided for released versions. If you want to use the github master version at HEAD, or you need to modify protobuf code, or you are using C++, it's recommended to build your own protoc binary from source.

If you would like to build protoc binary from source, see the C++ Installation Instructions.

Protobuf Runtime Installation

Protobuf supports several different programming languages. For each programming language, you can find instructions in the corresponding source directory about how to install protobuf runtime for that specific language:

Language Source
C++ (include C++ runtime and protoc) src
Java java
Python python
Objective-C objectivec
C# csharp
JavaNano javanano
JavaScript js
Ruby ruby
Go golang/protobuf
PHP TBD

Usage

The complete documentation for Protocol Buffers is available via the web at:

https://developers.google.com/protocol-buffers/