測試例子時出現報錯如下,在最下面會寫出安裝流程。
-------------------------------------報錯----1-------------------------------------
protoc --cpp_out=. --java_out=. --python_out=. addressbook.proto
make: protoc: Command not found
make: *** [protoc_middleman] Error 127
make: protoc: Command not found
make: *** [protoc_middleman] Error 127
-------------------------------------解決辦法-------------------------------------
export PATH=$PATH:/usr/local/protobuf/bin (這個路徑也可以是 /home/protobuf-2.5.0 因為這兩個路徑都有 protoc,如果不知道自己的路徑,可以用 find -name protoc 來找生成路徑)
-------------------------------------報錯----2-------------------------------------
pkg-config --cflags protobuf # fails if protobuf is not installed
Package protobuf was not found in the pkg-config search path.
Perhaps you should add the directory containing `protobuf.pc'
to the PKG_CONFIG_PATH environment variable
No package 'protobuf' found
make: *** [add_person_cpp] Error 1
Package protobuf was not found in the pkg-config search path.
Perhaps you should add the directory containing `protobuf.pc'
to the PKG_CONFIG_PATH environment variable
No package 'protobuf' found
make: *** [add_person_cpp] Error 1
-------------------------------------解決辦法-------------------------------------
export PKG_CONFIG_PATH=/home/protobuf-2.5.0 (解釋報錯原因是環境變量路徑中找不到文件 protobuf.pc 所以要指定路徑。)
1.下載安裝包,找了網上好多例子,protobuf-2.5.0 版本zip或者tar.gz都行
地址:https://github.com/protocolbuffers/protobuf/releases?after=v3.0.0-alpha-4
2.解壓安裝(我是直接放到路徑 /home )
unzip protobuf-2.5.0.zip 或者 tar -zxvf protobuf-2.5.0.tar.gz
cd protobuf-2.5.0
./configure --prefix=$INSTALL_DIR
make //生成 protoc
make check
make install
3.設置編譯器protoc路徑
cp src/protoc ../examples/ //拷貝到測試路徑
設置動態庫搜索路徑
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/protobuf-2.5.0/src
設置編譯器路徑
export PATH=$PATH:/usr/local/protobuf/bin
4.根據 message.proto 文件生成 .h .cc
./protoc -I=. --cpp_out=. ./addressbook.proto //對測試文件進行生成 .h .cc
5.生成 可執行文件
make
生成了:add_person_cpp list_people_cpp