Building from source
Download latest version of procbuffer. [https://code.google.com/p/protobuf/downloads/list].
- e.g "wget https://protobuf.googlecode.com/files/protobuf-2.5.0.tar.bz2"
Untar the tar.bz2 file
- tar xfvj protobuf-2.5.0.tar.bz2
Configure the protobuf.
- cd protobuf-2.5.0
- ./configure CC=clang CXX=clang++ CXXFLAGS=‘-std=c++11 -stdlib=libc++ -O3 -g‘ LDFLAGS=‘-stdlib=libc++‘ LIBS="-lc++ -lc++abi"
Make the source
- make -j 4
- sudo make install
在make -j 4时,可能出现如下错误
In file included from ./google/protobuf/stubs/common.h:41: In file included from /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/string:439: In file included from /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/algorithm:628: In file included from /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:604: /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/iterator:341:10: fatal error: ‘__debug‘ file not found
遇到如上错误:执行如下命令
echo ‘#define _LIBCPP_ASSERT(x, m) ((void)0)‘ | sudo tee -a /Library/Developer/CommandLineTools/usr/include/c++/v1/__debug > /dev/null
reference:
http://sleepythread.blogspot.com/2013/11/installing-protoc-25x-compiler-google.html
https://github.com/JuliaLang/julia/issues/10822
http://stackoverflow.com/questions/29529455/missing-c-header-debug-after-updating-osx-command-line-tools-6-3