1.安装的环境介绍:VMware虚拟机安装的Ubuntu 15.04系统
2.安装前准备:确保m4、autoconf、automake、libtool已经正确安装过,如果没有安装一下为安装步骤(在管理员权限下操作)
###安装m4
1. wget http://mirrors.kernel.org/gnu/m4/m4-1.4.13.tar.gz
2. tar -xzvf m4-1.4.13.tar.gz
3. cd m4-1.4.13
4. ./configure --prefix=/usr/local
5. make && make install
6. cd ..
###安装autoconf
1. wget http://mirrors.kernel.org/gnu/autoconf/autoconf-2.65.tar.gz
2. tar -xzvf autoconf-2.65.tar.gz
3. cd autoconf-2.65
4. ./configure --prefix=/usr/local
5. make && make install
6. cd ..
###安装automake
1. wget http://mirrors.kernel.org/gnu/automake/automake-1.11.tar.gz
2. tar xzvf automake-1.11.tar.gz
3. cd automake-1.11
4. ./configure --prefix=/usr/local
5. make && make install
6. cd ..
###安装libtool
1. wget http://mirrors.kernel.org/gnu/libtool/libtool-2.2.6b.tar.gz
2. tar xzvf libtool-2.2.6b.tar.gz
3. cd libtool-2.2.6b
4. ./configure --prefix=/usr/local
5. make && make install
6. cd ..
3.安装protobuf(在管理员权限下操作)
1)wget https://github.com/google/protobuf/releases/download/v2.6.1/protobuf-2.6.1.tar.gz
2) tar -zxvf protobuf-2.6.1.tar.gz
3)cd protobuf-2.6.1
4)./configure
5)make
6)make check
7)make install
如果执行./configure时出现如下问题
Ubuntu: configure error: C++ preprocessor "/lib/cpp" fails sanity check
解决办法
sudo apt-get install build-essential
4 检查是否安装成功
protoc --version
如果安装成功,会出现版本号 如
libprotoc 2.6.1
如果有问题,会输出错误内容
最后我安装完成,用上述命令检查版本号时出现如下问题
protoc: error while loading shared libraries: libprotocbuf.so.9: cannot open shared
错误原因
protobuf的默认安装路径是/usr/local/lib,而/usr/local/lib不在ubuntu体系默认的LD_LIBRARY_PATH里,所以就找不到lib
解决办法
1 在 /etc/ld.so.conf.d/目录下创建文件 bprotobuf.conf文件,文件内容如下
/usr/local/lib
2 输入命令
sudo ldconfig
这时,再输入protoc --version就可以正常看到版本号了