From c5fb586fc9441aa91396cc9c50849d8fdf2a70ad Mon Sep 17 00:00:00 2001 From: "John D. Pope" Date: Fri, 5 Jul 2019 10:35:51 +1000 Subject: [PATCH] allow copy and paste from readme spare people the time deleting $ from text. --- src/README.md | 39 ++++++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 17 deletions(-) diff --git a/src/README.md b/src/README.md index d84176e369..007deb328e 100644 --- a/src/README.md +++ b/src/README.md @@ -40,20 +40,22 @@ You can also get the source by "git clone" our git repository. Make sure you have also cloned the submodules and generated the configure script (skip this if you are using a release .tar.gz or .zip package): - $ git clone https://github.com/protocolbuffers/protobuf.git - $ cd protobuf - $ git submodule update --init --recursive - $ ./autogen.sh - +```shell + git clone https://github.com/protocolbuffers/protobuf.git + cd protobuf + git submodule update --init --recursive + ./autogen.sh +``` To build and install the C++ Protocol Buffer runtime and the Protocol Buffer compiler (protoc) execute the following: - $ ./configure - $ make - $ make check - $ sudo make install - $ sudo ldconfig # refresh shared library cache. - +```shell + ./configure + make + make check + sudo make install + sudo ldconfig # refresh shared library cache. +``` 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. Proceed at your own risk. @@ -83,10 +85,12 @@ Protocol Buffers integrates with pkg-config to manage this. If you have pkg-config installed, then you can invoke it to get a list of flags like so: + pkg-config --cflags protobuf # print compiler flags pkg-config --libs protobuf # print linker flags pkg-config --cflags --libs protobuf # print both + For example: c++ my_program.cc my_proto.pb.cc `pkg-config --cflags --libs protobuf` @@ -97,6 +101,7 @@ not pass the correct set of flags to correctly link against libprotobuf. If the package in question uses autoconf, you can often fix the problem by invoking its configure script like: + configure CXXFLAGS="$(pkg-config --cflags protobuf)" \ LIBS="$(pkg-config --libs protobuf)" @@ -118,15 +123,15 @@ of "protobuf" in these examples. For a Mac system, Unix tools are not available by default. You will first need to install Xcode from the Mac AppStore and then run the following command from a terminal: - - $ sudo xcode-select --install - +```shell + sudo xcode-select --install +```shell To install Unix tools, you can install "port" following the instructions at https://www.macports.org . This will reside in /opt/local/bin/port for most Mac installations. - - $ sudo /opt/local/bin/port install autoconf automake libtool - +```shell + sudo /opt/local/bin/port install autoconf automake libtool +``` Then follow the Unix instructions above. **Note for cross-compiling**