linux 下c++源码编译安装protobuf,无sudo权限 非 root用户也适用
1. 下载源码
从github官方项目下载protubuf-cpp源码,网址
例如:
2. 编译安装到指定路径
# 1. 解压
unzip protobuf-cpp-3.15.0.zip
# 2. 进入目录
cd protobuf-3.15.0
# 3. 执行 ./configure --perfix=/path/to/install
# 安装在你有读写权限的目录即可,不设置的话默认使用 /usr/local 该目录需要sudo权限
./configure --prefix=/home/zhaozb/protobuf-3.15.0
# 4. 执行 make -j8 进行编译
# 8 代表使用的核心数,根据具体电脑上的cpu设置,数字越大编译越快
make -j8
# 5. 执行 make install 将protobuf安装到第3步中设置的目录
make install
3. 配置用户环境变量
# 1.
vim ~/.bashrc
# 追加以下内容
PROTOBUF_DIR=/home/zhaozb/protobuf-3.15.0 # 这个路径替换为你编译安装中具体设置的安装路径
#(动态库搜索路径) 程序加载运行期间查找动态链接库时指定除了系统默认路径之外的其他路径
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PROTOBUF_DIR/lib
#(静态库搜索路径) 程序编译期间查找动态链接库时指定查找共享库的路径
export LIBRARY_PATH=$LIBRARY_PATH:$PROTOBUF_DIR/lib
#执行程序搜索路径
export PATH=$PATH:$PROTOBUF_DIR/bin
#c程序头文件搜索路径
export C_INCLUDE_PATH=$C_INCLUDE_PATH:$PROTOBUF_DIR/include
#c++程序头文件搜索路径
export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:$PROTOBUF_DIR/include
#pkg-config 路径
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$PROTOBUF_DIR/pkgconfig
# 2.
source ~/.bashrc
4. 验证
# 查看 protobuf 版本信息
protoc --version
# output
libprotoc 3.15.0