|
@@ -1,14 +1,17 @@
|
|
Protocol Buffers - Google's data interchange format
|
|
Protocol Buffers - Google's data interchange format
|
|
|
|
+===================================================
|
|
|
|
+
|
|
Copyright 2008 Google Inc.
|
|
Copyright 2008 Google Inc.
|
|
|
|
+
|
|
https://developers.google.com/protocol-buffers/
|
|
https://developers.google.com/protocol-buffers/
|
|
|
|
|
|
C++ Installation - Unix
|
|
C++ Installation - Unix
|
|
-=======================
|
|
|
|
|
|
+-----------------------
|
|
|
|
|
|
If you get the source from github, you need to generate the configure script
|
|
If you get the source from github, you need to generate the configure script
|
|
first:
|
|
first:
|
|
|
|
|
|
- $ ./autogen.sh
|
|
|
|
|
|
+ $ ./autogen.sh
|
|
|
|
|
|
This will download gtest source (which is used for C++ Protocol Buffer
|
|
This will download gtest source (which is used for C++ Protocol Buffer
|
|
unit-tests) to the current directory and run automake, autoconf, etc.
|
|
unit-tests) to the current directory and run automake, autoconf, etc.
|
|
@@ -20,10 +23,10 @@ contains gtest and the configure script).
|
|
To build and install the C++ Protocol Buffer runtime and the Protocol
|
|
To build and install the C++ Protocol Buffer runtime and the Protocol
|
|
Buffer compiler (protoc) execute the following:
|
|
Buffer compiler (protoc) execute the following:
|
|
|
|
|
|
- $ ./configure
|
|
|
|
- $ make
|
|
|
|
- $ make check
|
|
|
|
- $ make install
|
|
|
|
|
|
+ $ ./configure
|
|
|
|
+ $ make
|
|
|
|
+ $ make check
|
|
|
|
+ $ make install
|
|
|
|
|
|
If "make check" fails, you can still install, but it is likely that
|
|
If "make check" fails, you can still install, but it is likely that
|
|
some features of this library will not work correctly on your system.
|
|
some features of this library will not work correctly on your system.
|
|
@@ -33,7 +36,7 @@ Proceed at your own risk.
|
|
|
|
|
|
For advanced usage information on configure and make, see INSTALL.txt.
|
|
For advanced usage information on configure and make, see INSTALL.txt.
|
|
|
|
|
|
-** Hint on install location **
|
|
|
|
|
|
+**Hint on install location**
|
|
|
|
|
|
By default, the package will be installed to /usr/local. However,
|
|
By default, the package will be installed to /usr/local. However,
|
|
on many platforms, /usr/local/lib is not part of LD_LIBRARY_PATH.
|
|
on many platforms, /usr/local/lib is not part of LD_LIBRARY_PATH.
|
|
@@ -45,7 +48,7 @@ For advanced usage information on configure and make, see INSTALL.txt.
|
|
If you already built the package with a different prefix, make sure
|
|
If you already built the package with a different prefix, make sure
|
|
to run "make clean" before building again.
|
|
to run "make clean" before building again.
|
|
|
|
|
|
-** Compiling dependent packages **
|
|
|
|
|
|
+**Compiling dependent packages**
|
|
|
|
|
|
To compile a package that uses Protocol Buffers, you need to pass
|
|
To compile a package that uses Protocol Buffers, you need to pass
|
|
various flags to your compiler and linker. As of version 2.2.0,
|
|
various flags to your compiler and linker. As of version 2.2.0,
|
|
@@ -83,7 +86,7 @@ For advanced usage information on configure and make, see INSTALL.txt.
|
|
If you only want protobuf-lite, substitute "protobuf-lite" in place
|
|
If you only want protobuf-lite, substitute "protobuf-lite" in place
|
|
of "protobuf" in these examples.
|
|
of "protobuf" in these examples.
|
|
|
|
|
|
-** Note for cross-compiling **
|
|
|
|
|
|
+**Note for cross-compiling**
|
|
|
|
|
|
The makefiles normally invoke the protoc executable that they just
|
|
The makefiles normally invoke the protoc executable that they just
|
|
built in order to build tests. When cross-compiling, the protoc
|
|
built in order to build tests. When cross-compiling, the protoc
|
|
@@ -106,7 +109,7 @@ For advanced usage information on configure and make, see INSTALL.txt.
|
|
has the same version as the protobuf source code you are trying to
|
|
has the same version as the protobuf source code you are trying to
|
|
use it with.
|
|
use it with.
|
|
|
|
|
|
-** Note for Solaris users **
|
|
|
|
|
|
+**Note for Solaris users**
|
|
|
|
|
|
Solaris 10 x86 has a bug that will make linking fail, complaining
|
|
Solaris 10 x86 has a bug that will make linking fail, complaining
|
|
about libstdc++.la being invalid. We have included a work-around
|
|
about libstdc++.la being invalid. We have included a work-around
|
|
@@ -116,7 +119,7 @@ For advanced usage information on configure and make, see INSTALL.txt.
|
|
|
|
|
|
See src/solaris/libstdc++.la for more info on this bug.
|
|
See src/solaris/libstdc++.la for more info on this bug.
|
|
|
|
|
|
-** Note for HP C++ Tru64 users **
|
|
|
|
|
|
+**Note for HP C++ Tru64 users**
|
|
|
|
|
|
To compile invoke configure as follows:
|
|
To compile invoke configure as follows:
|
|
|
|
|
|
@@ -125,7 +128,7 @@ For advanced usage information on configure and make, see INSTALL.txt.
|
|
Also, you will need to use gmake instead of make.
|
|
Also, you will need to use gmake instead of make.
|
|
|
|
|
|
C++ Installation - Windows
|
|
C++ Installation - Windows
|
|
-==========================
|
|
|
|
|
|
+--------------------------
|
|
|
|
|
|
If you are using Microsoft Visual C++, see vsprojects/readme.txt.
|
|
If you are using Microsoft Visual C++, see vsprojects/readme.txt.
|
|
|
|
|
|
@@ -133,7 +136,7 @@ If you are using Cygwin or MinGW, follow the Unix installation
|
|
instructions, above.
|
|
instructions, above.
|
|
|
|
|
|
Binary Compatibility Warning
|
|
Binary Compatibility Warning
|
|
-============================
|
|
|
|
|
|
+----------------------------
|
|
|
|
|
|
Due to the nature of C++, it is unlikely that any two versions of the
|
|
Due to the nature of C++, it is unlikely that any two versions of the
|
|
Protocol Buffers C++ runtime libraries will have compatible ABIs.
|
|
Protocol Buffers C++ runtime libraries will have compatible ABIs.
|
|
@@ -144,10 +147,10 @@ immediately on startup of your app. Still, you may want to consider
|
|
using static linkage. You can configure this package to install
|
|
using static linkage. You can configure this package to install
|
|
static libraries only using:
|
|
static libraries only using:
|
|
|
|
|
|
- ./configure --disable-shared
|
|
|
|
|
|
+ ./configure --disable-shared
|
|
|
|
|
|
Java and Python Installation
|
|
Java and Python Installation
|
|
-============================
|
|
|
|
|
|
+----------------------------
|
|
|
|
|
|
The Java and Python runtime libraries for Protocol Buffers are located
|
|
The Java and Python runtime libraries for Protocol Buffers are located
|
|
in the java and python directories. See the README file in each
|
|
in the java and python directories. See the README file in each
|
|
@@ -156,9 +159,9 @@ Note that both of them require you to first install the Protocol
|
|
Buffer compiler (protoc), which is part of the C++ package.
|
|
Buffer compiler (protoc), which is part of the C++ package.
|
|
|
|
|
|
Usage
|
|
Usage
|
|
-=====
|
|
|
|
|
|
+-----
|
|
|
|
|
|
The complete documentation for Protocol Buffers is available via the
|
|
The complete documentation for Protocol Buffers is available via the
|
|
web at:
|
|
web at:
|
|
|
|
|
|
- https://developers.google.com/protocol-buffers/
|
|
|
|
|
|
+ https://developers.google.com/protocol-buffers/
|