欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 培训 > Linux下编译protobuf-3.11.2

Linux下编译protobuf-3.11.2

2025/5/1 16:20:57 来源:https://blog.csdn.net/m0_57010556/article/details/147472153  浏览:    关键词:Linux下编译protobuf-3.11.2

1. 安装依赖

在编译之前,确保系统中安装了必要的依赖工具和库。运行以下命令安装:

sudo apt update
sudo apt install -y build-essential curl cmake autoconf automake libtool unzip git

这些工具包括:

  • build-essential: 提供 GCC 编译器和其他开发工具。
  • autoconfautomakelibtool: 用于生成 Makefile。
  • curlunzip: 用于下载和解压文件。

2. 下载 protobuf-3.11.2

如果还没有下载源码,可以通过以下命令获取:

wget https://github.com/protocolbuffers/protobuf/releases/download/v3.11.2/protobuf-cpp-3.11.2.tar.gz
tar -xzf protobuf-cpp-3.11.2.tar.gz
cd protobuf-3.11.2

如果你已经有了源码压缩包,直接解压即可。


3. 配置和编译

(1) 执行 autogen.sh

进入解压后的目录,运行 autogen.sh 脚本来生成配置文件:

./autogen.sh

(2) 配置编译环境

运行 configure 脚本来配置编译选项:

./configure

如果你想指定安装路径(例如 /usr/local/protobuf),可以使用 --prefix 参数:

./configure --prefix=/home/protobuf-3.11.2/build

(3) 编译

创建并进入构建目录

为了保持源代码目录的整洁,建议在一个新的目录中进行编译:

mkdir -p build && cd build

运行以下命令进行编译:

make -j$(nproc)

-j$(nproc) 参数会根据 CPU 核心数并行编译,加快速度。

(4) 安装

编译完成后,安装到系统中:

sudo make install

如果你指定了 --prefix 参数,安装路径会是你指定的路径。


4. 配置环境变量

如果安装路径不是默认的 /usr/local,需要将安装路径添加到环境变量中。

编辑 ~/.bashrc~/.zshrc 文件:

export PATH=/home/protobuf-3.11.2/build/bin:$PATH
export LD_LIBRARY_PATH=/home/protobuf-3.11.2/build/lib:$LD_LIBRARY_PATH

然后重新加载配置文件:

source ~/.bashrc

或者对于 Zsh 用户:

source ~/.zshrc

5. 验证安装

运行以下命令验证安装是否成功:

protoc --version

输出应该类似于:

libprotoc 3.11.2

6. 清理(可选)

如果不再需要编译过程中的临时文件,可以清理它们:

make clean

注意事项

  1. gRPC 支持:如果你还需要支持 gRPC,请确保安装了 grpc 和相关依赖。
  2. 多版本冲突:如果系统中已有其他版本的 protobuf,可能会导致冲突。建议通过 --prefix 指定独立的安装路径。
  3. C++11 支持:确保你的编译器支持 C++11(GCC 版本 >= 4.8)。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词