Windows下编译protobuf v3.3.0

时间:2022-04-19 09:28:56

关于 protobuf 在此不再多说,此处记录下成功编译步骤以备日后查阅。
注意:本文并不是使用cmake gui进行编译的,如果熟悉cmake gui的话,也可以使用gui进行生成编译。

二:准备资源及工具

VS2013或以上版本,安装好

protobuf 源码,下载地址:
官网:
git网:https://github.com/google/protobuf
或git:https://github.com/google/protobuf/releases
个人是最后一个地址下载的,下载包为末尾的:Source code (zip) 完整包

cmake,下载并安装好

注意:如果有需要编译gtest的,还需要上官网或git下载gmock与gtest相关资源包。(早上这两个包好像是分开的,现在新版本,看readme中描述,gmock像是已被整合到gtest中了)。本人不需要gtest,故不下载。

三:环境配置

安装好cmake后,打开cmd窗口输入 cmake --version 检查cmake是否安装正确。如果提示错误,则需要手动配置cmake到系统环境变量中

解压下载好的 protobuf 源码完整包。(如解压到此处:I:\Dev\C++\ ,因此,本人的 protobf 资源所在位置为:I:\Dev\C++\protobuf-3.3.0)

四:编译 protobuf

打开VS2013 x64 本地工具命令提示(因为个人编译的是x64版本)

cd I:\Dev\C++\protobuf-3.3.0\cmake

mkdir build & cd build

mkdir debug & cd debug
提示:要编译release版本时,就 mkdir release & cd release 即可。此步骤只是创建一个debug(或release)目录,用于存放生成debug(或release)相关的cmake file配置信息。执行完步骤3、4后,当前所在路径为:I:\Dev\C++\protobuf-3.3.0\cmake\build\release

cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -Dprotobuf_BUILD_TESTS=OFF -DCMAKE_INSTALL_PREFIX=../../../install ../..
此时稍等片刻等待makefile相关的配置文本生成完成。如果没有提示错误,则继续后续步骤

nmake
此时再次稍等片刻等待protobuf(相应的debug或release版本)编译完成。如果没有提示错误,则继续后续步骤

nmake install
此时再次稍等片刻等待安装完成。如果没有提示错误,,则会在I:\Dev\C++\protobuf-3.3.0目录下生成一个 install目录,里面会有 bin 目录、lib 目录、include 目录 以及一个 cmake 目录。对于开发有用的主要是前三个目录。

提示:最终生成好debug与release后(如果有同时生成的话),则它们的include目录是完全一样的。因此,不论是生成debug还是release或都生成,则都可以完全按照前面7个步骤来操作即可。

Windows下编译protobuf v3.3.0