Windows下编译

官方文档
第三方文档

准备工具

需要注意

推荐按照第三方的文档上的安装就可以了,但是中间会有许多坑。
比如:若是下载proto3的最新版,就会编译错误,我这里也没找到为嘛错误,所以就按照第三方文档上面的git 3.0版本的源代码。

按照各自的需求修改源代码后,直接进行编译和检查就行了。

主要步骤

1、 通过你的开始菜单,打开Visual Studio 2013的开发人员命令提示工具:

2、然后cd到D盘,自己创建以下目录

  1. D:\Path\to

3、git源代码(3.0版本)

  1. D:\Path\to>git clone -b v3.0.0 https://github.com/google/protobuf.git
  2. D:\Path\to>cd protobuf
  3. D:\Path\to\protobuf>
  4. D:\Path\to\protobuf>git clone -b release-1.7.0 https://github.com/google/googlemock.git gmock
  5. D:\Path\to\protobuf>cd gmock
  6. D:\Path\to\protobuf\gmock>git clone -b release-1.7.0 https://github.com/google/googletest.git gtest

4、cmake的配置

  1. D:\Path\to\protobuf\gmock>cd ..\cmake
  2. D:\Path\to\protobuf\cmake>

5、创建build临时编译目录

  1. D:\Path\to\protobuf\cmake>mkdir build & cd build
  2. D:\Path\to\protobuf\cmake\build>

6、Release 配置

  1. D:\Path\to\protobuf\cmake\build>mkdir release & cd release
  2. D:\Path\to\protobuf\cmake\build\release>cmake -G "NMake Makefiles"-DCMAKE_BUILD_TYPE=Release-DCMAKE_INSTALL_PREFIX=../../../../install ../..

7、开始编译发布

  1. D:\Path\to\protobuf\cmake\build\release>nmake

接下来等待一段时间:

8、获取编译后的可执行文件
在当前文件夹下,就可以看到编译好的文件:protoc.exe

手动编译protobuf3的C++源码的更多相关文章

  1. CentOS7.3编译hadoop2.7.3源码

    在使用hive或者是kylin时,可以选择文件的压缩格式,但是这个需要有hadoop native库的支持,默认情况下,hadoop官方发布的二进制包中是不包含native库的,所以无法使用一些压缩相 ...

  2. Spring源码学习01:IntelliJ IDEA2019.3编译Spring5.3.x源码

    目录 Spring源码学习01:IntelliJ IDEA2019.3编译Spring5.3.x源码 前言 工欲善其事必先利其器.学习和深读Spring源码一个重要的前提:编译源码到我们的本地环境.这 ...

  3. Spring源码解析 | 第一篇 :IntelliJ IDEA2019.3编译Spring5.3.x源码

    前言 工欲善其事必先利其器.学习和深读Spring源码一个重要的前提:编译源码到我们的本地环境.这样方便我们在本地环境添加注释.断点追踪.查看类或接口的继承关系等等,更加高效的学习Spring源码.个 ...

  4. 编译hadoop2.2.0源码时报错

    编译hadoop2.2.0源码时, mvn install -DskipTests 报错: [ERROR] COMPILATION ERROR : [INFO] ------------------- ...

  5. Ubuntu12.04编译Android4.0.1源码全过程-----附wubi安装ubuntu编译android源码硬盘空间不够的问题解决

    昨晚在编译源码,make一段时间之后报错如下: # A fatal error has been detected by the Java Runtime Environment: # # SIGSE ...

  6. vs2008编译FileZilla服务端源码

    vs2008编译FileZilla服务端源码 FileZilla服务端下载地址:https://download.filezilla-project.org/server/.FileZilla服务端源 ...

  7. WebRtc编译好的vs2015源码

    一直想看webrtc的源码,苦于FQ能力有限且整个编译过程耗时巨大,故求助于互联网.在互联网寻找许久编译好的Webrtc源码,好多版本下载下来总是报各种错误,很是失落. 皇天不负有心人,终于寻得一版可 ...

  8. Win10 VS2015 静态编译Qt5.6.2源码

    由于VS2015需要CRT等拓展组件,因此把内部编写的工具软件以静态发布,固需要编译Qt源码.Qt5.6.2版本,VS2015,Win10 1.安装python,perl,下载jom 2.改文件com ...

  9. 获取并编译最新的Notepad++源码

    获取并编译最新的Notepad++源码 http://blog.csdn.net/u012814856/article/details/68947310 Notepad++源码编译及其分析 http: ...

随机推荐

  1. Android OpenGL ES 开发(二): OpenGL ES 环境搭建

    零:环境搭建目的 为了在Android应用程序中使用OpenGL ES绘制图形,必须要为他们创建一个视图容器.其中最直接或者最常用的方式就是实现一个GLSurfaceView和一个GLSurfaceV ...

  2. PostgreSQL索引描述

    索引方式:唯一索引,主键索引,多属性索引,部分索引,表达式索引. 索引类型:B-Tree,Hash,GiST,GIN以及表达式索引 PostgreSQL所有索引都是“从属索引”,也就是说,索引在物理上 ...

  3. gulp入门详细教程

    简介:gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器:她不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成:使用她,我们不仅可以很愉快的编写代码, ...

  4. 【docker 一】入门实践、环境部署、基本操作指令、镜像库、数据卷

    简述 `docker是如火如荼的容器技术,今后会陆续上传关于微服务技术的学习笔记,希望能和大家一起学习一起分享!` docker环境搭建 1.获取最新版的Docker安装包 $ wget -qO- h ...

  5. python 3.6 tkinter+urllib+json 火车车次信息查询

    --------blogs:  陈月白    http://www.cnblogs.com/chenyuebai    -------- 一.概述 妹子工作时需要大量地查询火车车次至南京的信息,包括该 ...

  6. C语言之——文件操作模式

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/47450667 "rt" 仅仅读打开一个文本文件.仅仅同意读数据 ...

  7. 被动式Telnet研究及实现(解决内外网远程维护的困难)-part A

    欢迎转载.转载请保留原文链接:http://blog.csdn.net/mikulee/article/details/40149779 项目背景及需求: 近期公司有一个项目: 我们在一个arm主机上 ...

  8. 单行json_ajax

    html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...

  9. RUP 方法简介

    1.什么是RUP: Rational Unified Process(以下简称RUP) 是一套软件工程方法,主要由 Ivar Jacobson的 The Objectory Approch 和 The ...

  10. 6.python内置函数

    1. abs() 获取绝对值 >>> abs(-10) 10 >>> a = -10 >>> a.__abs__() 10 2. all()   ...