PDFium 源码编译

一、下载源码:
        1、下载 depot_tools 源码; 
              https://chromium.googlesource.com/chromium/tools/depot_tools.git
              下载完成后,将下载的 depot_tools 源码目录添加系统搜索路径之中;

2、下载 PDFium 源码;
              gclient config --unmanaged https://pdfium.googlesource.com/pdfium.git
              gclient sync
              确保下载完整。看看 pdfium\third_party\llvm-build\Release+Asserts\bin 目录下面是否有 clang-cl.exe 如果有,
              代表下载完整,否则用 gclient sync 再次更新下载。

二、编译:
         进入 PDFium 源码目录,
                1、在命令行上输入:gn args zout/VSX86,此时会弹出编译选项文本,要你输入。不输入也可以
                      (默认生成 x64、动态库版本。编译选项见下面三)。此时会生成 zout/VSX86 目录和一堆文件。
                     如果希望用 VS 的 IDE 来编译,可用:gn args --ide=vs zout/VSX86,来代替:gn args zout/VSX86,
      这样会生成 zout/VSX86/all.sln 工程文件。用 VS 打开编译就可以了。
                2、再次在命令行上输入:ninja -C zout/VSX86 pdfium,进行编译。
                      编译过程会根据编译选项不同,花费的时间不同。测试发现 Clang-cl 比 VS2017 明显编译要快。

三、编译选项:   

# 是否启用 goma 支持
use_goma = false# 是否编译为 Chrome 插件
clang_use_chrome_plugins = false# 是否进行编译测试
pdf_is_standalone = true# 是否启用 skia 支持
pdf_use_skia = false
pdf_use_skia_paths = false# true 编译为 debug 版本,false 编译为 release 版本
is_debug = false# true 编译为动态库,false 编译为静态库
is_component_build = false# 编译为一个独立的静态库(is_component_build  必须为 false)
# pdf_is_complete_lib  为 false 时, 编译为多个静态库,true 编译为一个独立的静态库
pdf_is_complete_lib = false# xfa 支持
pdf_enable_xfa = false# v8  支持;启用 v8 后,编译时间会增加
pdf_enable_v8 = true# cpu 架构;x86、x64 可选
target_cpu = "x86"# true 将用 clang 进行编译,false 将用 VS2017 编译
is_clang = false

如果启用了 V8 编译,那么 V8 引擎也有了。想干啥干啥去。

编译好的 PDFium 的下载:https://download.csdn.net/download/dbyoung/11181089

VS2017 编译 PDFium 源码,生成 x86、x64,动态库、静态库相关推荐

  1. windows 平台使用 VS2017 编译 libevent 源码

    一 依赖库编译 先要将其依赖的库编译好,其中openssl需要编译到libevent中,编译成libevent_openssl.lib库,zlib在新版本中只有示例用到. 1)windows 平台使用 ...

  2. vs2017运行显示系统找不到指定的文件_windows 平台使用 VS2017 编译 libevent 源码

    一 依赖库编译 先要将其依赖的库编译好,其中openssl需要编译到libevent中,编译成libevent_openssl.lib库,zlib在新版本中只有示例用到. 1)windows 平台使用 ...

  3. 基础IO(文件接口、安装内核源码超详细步骤图解、静态库与动态库)

    基础IO C语言的文件操作接口 fopen fclose fread fwrite fseek 系统调用文件接口 open close read write lseek 安装内核源码 文件描述符&am ...

  4. Windows10上使用VS2017编译MXNet源码操作步骤(C++)

    MXNet是一种开源的深度学习框架,核心代码是由C++实现.MXNet官网推荐使用VS2015或VS2017编译,因为源码中使用了一些C++14的特性,VS2013是不支持的.这里通过VS2017编译 ...

  5. vs2019编译obs源码生成sln解决方案

    目录 一.OBS介绍 二.OBS源码下载 三.Qt配置 四.设置依赖库目录 五.开始编译 六.main函数 七.视频教程 一.OBS介绍   obs的编译不是很难,只要代码下的全,环境变量配的ok, ...

  6. Visual Studio2017源码编译libzip源码

    一.编译准备 1.libzip源码下载  点击下载 2.CMake 点击下载 3.编译工具VS2017  点击下载 二.CMake生成VS2017工程 1.CMake配置Configure 2.CMa ...

  7. VS2015编译32位Opencv310(动态库+静态库,文末有下载链接)

    VS2015编译32位Opencv310(动态库+静态库 编译过得,可以直接用的: http://download.csdn.net/download/longzaihuaxia/9802510 之前 ...

  8. 在Windows和Linux上编译gRPC源码操作步骤(C++)

    gRPC最新发布版本为v1.23.0,下面以此版本为例说明在Windows和Linux下编译过程. Windows7/10 vs2103编译gRPC源码操作步骤: 1. 需要本机已安装Git.CMak ...

  9. Windows7上使用VS2013编译Caffe源码(不带GPU支持)步骤

    1.      从https://github.com/BVLC/caffe/通过git clone下载caffe源码,master分支,版本号为09868ac:$ git  clone https: ...

最新文章

  1. 一致性问题和Raft一致性算法——一致性问题是无法彻底解决的,可以说一个分布式系统可靠性达到99.99…%,但不能说它达到了100%...
  2. 对于jQuery的初步印象
  3. .PHP $_SERVER返回上一页
  4. Ansible批量管理与维护
  5. 软件配置管理(三)软件配置管理核心功能
  6. 又上热搜!鸿星尔克悄悄给山西捐赠2000万物资!这些大厂也出手了...
  7. 一加7海外提前上架 骁龙855+12GB超大内存
  8. 20181027_任务
  9. [转载] c++list遍历_List、Set、数据结构、Collections
  10. CodeForces 551E(平方分割
  11. 阶段3 3.SpringMVC·_02.参数绑定及自定义类型转换_2 请求参数绑定实体类型
  12. php采集过滤内容,PHP采集利器:根据开始字符串和结束字符串截取需要的采集内容数据...
  13. 如何查看android设备是否支持Widevine DRM
  14. 电视盒子内存测试软件,电视盒子内存太小怎么办?当贝市场一招扩充内存
  15. Excel中怎么查找重复值
  16. java文字竖排_Java输出竖排文字
  17. qt远程调试ARM板
  18. php 2038年,PHP 处理大于2038年以后的日期
  19. QT之QTableWidget控件
  20. UESTC论坛-清水河畔自动登陆/重复发贴/安全性分析

热门文章

  1. 电话约人怎么才不被拒绝 2
  2. 测试工程师之bug定位(转)
  3. Java集合之概述篇
  4. 用计算机语言表达喜欢之情,成语误用的几种情况
  5. HOUR_OF_DAY: 2 -> 3问题总结
  6. 【Codecs系列】x265编码器(三):preset支持工具集和优化分析
  7. 算法导论 动态规划钢条切割问题 C语言
  8. 九寨沟游玩体会-02-四川
  9. 说说多态是什么,多态的前提条件是什么?
  10. Leetcode 829. 连续整数求和 C++