VS2017 编译 PDFium 源码,生成 x86、x64,动态库、静态库
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,动态库、静态库相关推荐
- windows 平台使用 VS2017 编译 libevent 源码
一 依赖库编译 先要将其依赖的库编译好,其中openssl需要编译到libevent中,编译成libevent_openssl.lib库,zlib在新版本中只有示例用到. 1)windows 平台使用 ...
- vs2017运行显示系统找不到指定的文件_windows 平台使用 VS2017 编译 libevent 源码
一 依赖库编译 先要将其依赖的库编译好,其中openssl需要编译到libevent中,编译成libevent_openssl.lib库,zlib在新版本中只有示例用到. 1)windows 平台使用 ...
- 基础IO(文件接口、安装内核源码超详细步骤图解、静态库与动态库)
基础IO C语言的文件操作接口 fopen fclose fread fwrite fseek 系统调用文件接口 open close read write lseek 安装内核源码 文件描述符&am ...
- Windows10上使用VS2017编译MXNet源码操作步骤(C++)
MXNet是一种开源的深度学习框架,核心代码是由C++实现.MXNet官网推荐使用VS2015或VS2017编译,因为源码中使用了一些C++14的特性,VS2013是不支持的.这里通过VS2017编译 ...
- vs2019编译obs源码生成sln解决方案
目录 一.OBS介绍 二.OBS源码下载 三.Qt配置 四.设置依赖库目录 五.开始编译 六.main函数 七.视频教程 一.OBS介绍 obs的编译不是很难,只要代码下的全,环境变量配的ok, ...
- Visual Studio2017源码编译libzip源码
一.编译准备 1.libzip源码下载 点击下载 2.CMake 点击下载 3.编译工具VS2017 点击下载 二.CMake生成VS2017工程 1.CMake配置Configure 2.CMa ...
- VS2015编译32位Opencv310(动态库+静态库,文末有下载链接)
VS2015编译32位Opencv310(动态库+静态库 编译过得,可以直接用的: http://download.csdn.net/download/longzaihuaxia/9802510 之前 ...
- 在Windows和Linux上编译gRPC源码操作步骤(C++)
gRPC最新发布版本为v1.23.0,下面以此版本为例说明在Windows和Linux下编译过程. Windows7/10 vs2103编译gRPC源码操作步骤: 1. 需要本机已安装Git.CMak ...
- Windows7上使用VS2013编译Caffe源码(不带GPU支持)步骤
1. 从https://github.com/BVLC/caffe/通过git clone下载caffe源码,master分支,版本号为09868ac:$ git clone https: ...
最新文章
- 一致性问题和Raft一致性算法——一致性问题是无法彻底解决的,可以说一个分布式系统可靠性达到99.99…%,但不能说它达到了100%...
- 对于jQuery的初步印象
- .PHP $_SERVER返回上一页
- Ansible批量管理与维护
- 软件配置管理(三)软件配置管理核心功能
- 又上热搜!鸿星尔克悄悄给山西捐赠2000万物资!这些大厂也出手了...
- 一加7海外提前上架 骁龙855+12GB超大内存
- 20181027_任务
- [转载] c++list遍历_List、Set、数据结构、Collections
- CodeForces 551E(平方分割
- 阶段3 3.SpringMVC·_02.参数绑定及自定义类型转换_2 请求参数绑定实体类型
- php采集过滤内容,PHP采集利器:根据开始字符串和结束字符串截取需要的采集内容数据...
- 如何查看android设备是否支持Widevine DRM
- 电视盒子内存测试软件,电视盒子内存太小怎么办?当贝市场一招扩充内存
- Excel中怎么查找重复值
- java文字竖排_Java输出竖排文字
- qt远程调试ARM板
- php 2038年,PHP 处理大于2038年以后的日期
- QT之QTableWidget控件
- UESTC论坛-清水河畔自动登陆/重复发贴/安全性分析