protobuf源码安装遇到被墙后,如何继续编译成功

protobuf正常的安装步骤为:

tar -xvf protobuf

cd protobuf
./autogen.sh

./configure --prefix=/usr/local/protobuf

make

make check

make install

如果在./autogen.sh时出错

Unknown SSL protocol error in connection to xxx:443,说明执行autogen.sh脚本时被墙了,仔细查看auotogen.sh脚本,发现了下面两个下载(感觉是protobuf留的坑)

 1 if test ! -e gmock; then
 2   echo "Google Mock not present.  Fetching gmock-1.7.0 from the web..."
 3   curl $curlopts -L -O https://github.com/google/googlemock/archive/release-1.7.0.zip
 4   unzip -q release-1.7.0.zip
 5   rm release-1.7.0.zip
 6   mv googlemock-release-1.7.0 gmock
 7 
 8   curl $curlopts -L -O https://github.com/google/googletest/archive/release-1.7.0.zip
 9   unzip -q release-1.7.0.zip
10   rm release-1.7.0.zip
11   mv googletest-release-1.7.0 gmock/gtest
12 fi

可以看到这个脚本里面从github里面下载了两个文件,手动自己下载这两个文件,放到一个放到protobuf/gmock目录下,一个放到protobuf/gmock/gtest下,记得解压。

然后在./autogen.sh就可以看到configure文件了,此时可以按照上面正常流程编译安装protobuf了。

 

 

 
posted @ 2021-08-08 16:08  万丈高楼平地起  阅读(288)  评论(0编辑  收藏  举报