Chromium CEF 2623 -- 支持 xp 的最后一个版本源码下载和编译步骤
背景
因为项目需要在客户端中内嵌浏览器,需要支持 xp 操作系统和播放视频,但 CEF 2623 以后的版本已经不支持 xp 操作系统,也不再提供 2623 版本的二进制发布包下载,只好自己手动编译。编译结果要求达到:
- 可以在 xp 及以上操作系统运行
- 可以播放 mp4 视频
在参考了很多文档,反复尝试很多次以后,终于编译成功并在项目中投入使用了。
因为直接从 CEF 代码库 2623 分支获取的代码编译会报错,需要进行多处修改才能编译成功。 这里把修改好的源码分享出来,只要根据下面的操作步骤配置编译环境,下载解压源代码直接编译应该就可以成功。
总的操作步骤是:
- 安装编译环境
- 下载源码压缩包解压
- 编译得到 CEF 的二进制发布包(包含集成所需的头文件和 dll,但还缺少 lib)
- 有了二进制发布包以后,就可以再轻松的编译静态 或 动态 lib
安装编译环境:
- OS: Win7 64bit 以上系统, 至少8G内存,60G以上硬盘,最好是SSD
- Visual Studio: VS2015u3 + Win10.0.14393 SDK + Ninja
- Python 2.7+
- 安装VS2015u3的时候,默认是不会安装Win10.0.14393 SDK的,需要手动勾选;
- 安装python后需要将python的执行环境加入到环境变量中;
下载源码
- 源码放在坚果云上供大家下载,下载速度很快,用此链接下载:https://www.jianguoyun.com/p/DZEq1SUQ_LKBBxjulmk
- 解压源码到磁盘根目录,比如 E:, 解压后的文件会在 E:\cef 文件夹中
编译
- 编译前需要保证磁盘空间至少 60G 的可用空间,最后编译完我用了 54.8G(而且只是编译 Release)如果 Release 和 Debug 同时编译,可能需要准备 120G 的空间
- 编辑 E:\cef\automate\build_cef_2623.bat 文件,根据需要编译的版本(Releae 或 Debug),打开或屏蔽相应的行,然后保存
- 进入命令行模式,切换到 E:\cef\automate 目录, 执行 build_cef_2623.bat 即开始编译
- 编译大概需要 4 个小时,编译过程中大部分时间,命令行窗口不会有变化,详细日志会写入 E:\cef\2623 文件夹,Release 版本大概日志写到 400 M 就快编译完了
- 编译完成后的二进制发布包在 E:\cef\2623\chromium\src\cef\binary_distrib 文件夹可以找到
按照上面的方式编译出来的是 32 位版本,且只能用于 VS2015。如果要用在其他环境,可以修改 E:\cef\automate\build_cef_2623.bat 文件中的参数,详细可参考文末的几篇参考文档。
根据二进制发布包编译 dll
- 参考这篇文章操作即可,很简单 https://www.jianshu.com/p/4c052fd02f7a
后续会把 vs2015 32位 环境下编译好的版本发上来,可以直接使用。
如果有问题可以加 QQ 群讨论,群号:599320555
转载请注明来自博客园 TerryHe 的微博 https://www.cnblogs.com/luckbird/p/CEF_2623_Compile.html
几篇参考文档
- https://www.jianshu.com/p/0d9f3633ef9e
- https://www.jianshu.com/p/4c052fd02f7a
- https://blog.csdn.net/zhuhongshu/article/details/54193842
- https://blog.csdn.net/ijiabao520/article/details/78006756
Chromium CEF 2623 -- 支持 xp 的最后一个版本源码下载和编译步骤的更多相关文章
- 我的第一个RootKit,支持XP、Vista、Win7、Win8 RTM 32位
只有写过一个BootKit,才能比较深刻的理解其整个过程与机制,也能加深对Windows系统引导各个过程的熟悉和理解. 我写的这个bootkit,暂时还没想到一个比较好的名字,它 1. 支持xp到w ...
- 使用Qt5.7.0 VS2015版本生成兼容XP的可执行程序 good(从VS2012 update1开始支持xp和c++11)
一.直接使用VS2012/VS2013/VS2015生成XP兼容的可执行程序 Visual Studio刚发布时没打补丁,称为RTM版,之后会陆续发布补丁,进行bug修复和功能增强.VS2010及之前 ...
- 关于在 java 8 下开启 TLS_RSA_WITH_3DES_EDE_CBC_SHA 支持 xp ie8 tls1.0 的正常访问
最近为 aioserver 增加了ssl支持. 在 myssl.com 上测试了一下,关于[客户端握手模拟]发现 ie8 xp tls1.0 这一项提示:握手失败 (服务器断开连接) 我又试了一下 ...
- Reg2Bat_By Slore(生成同名bat文件,支持XP WIN7 WIN7X64).vbs
原文http://slore.blogbus.com/logs/52627038.htmlSlore编写的这个reg文件转换为bat文件,是逐句转换的,不是通过批处理生成临时reg文件然后导入的方法, ...
- Qt5.5.0在Windows下静态编译(修改参数以后才能支持XP)good
测试系统环境: windows 7 编译软件环境: vs2013 + QT5.5.0 [源码地址:http://download.qt.io/official_releases/qt/5.5/5.5. ...
- 编译 Qt 5.6(使QtWebEngine支持XP)
说明 qt 5.6的编译进行了数十遍,才得出本文的可行方案,之所以花了这么多的时间,主要是qt引入了QtWebEngine模块后,导致编译难度直线上升,而且又有一些中国特色的问题(如360安全卫士)导 ...
- 官方发布的新版本Qt已经不支持XP了,要自己从源代码编译
官方发布的新版本Qt已经不支持XP了,要自己从源代码编译,编译选项里有个-target项,用来提供XP支持的,编译时加上-target xp就可以了 http://www.qtcn.org/bbs/r ...
- 让VC2012生成的程序支持XP系统(QT的DLL都是支持XP的,只与EXE有关)
如果用的编译器是VC2012以上,那么默认生成出的程序是不能运行在XP系统上的.所以需要修改链接参数 我们要做的是修改qmake.conf文件中的参数,文件路径根据开发环境不同而不同下面以5.1.1 ...
- JZ2440专用dnw 支持xp、win7、win8和win10系统【转】
本文转载自:https://blog.csdn.net/czg13548930186/article/details/76999152 学习于韦东山百问网公司 本文用于解决win7以上系统使用dnw难 ...
随机推荐
- Sparql语言模型(一)
在进行RDF数据查询或描写叙述的时候.Sparql不管从出身.标准抑或操作习惯上都是一个不错的选择.然而对于一个刚開始学习的人来说多多少少有些"禁忌"的意味,操作起来也有点畏首畏尾 ...
- springmvc的执行流程详解
1.什么是MVC MVC是Model View Controller的缩写,它是一个设计模式 2.springmvc执行流程详细介绍 第一步:发起请求到前端控制器(DispatcherServlet) ...
- 【网易云音乐 for linux】 踩过的坑
1.从官网下载的包,却怎么也安装不上. 提示依赖,网上全是什么 sudo apt-get -f install ,结果提示有没有完成安装的包,让我卸载. 于是按下Y卸载了网易云. 尝试一个个修复以来, ...
- 理解SetCapture、ReleaseCapture、GetCapture(控制了消息发往哪个窗口,即消息窗口)
理解SetCapture.ReleaseCapture.GetCapture 正常情况下,鼠标指针位于哪个窗口区域内,鼠标消息就自动发给哪个窗口.如果调用了SetCapture,之后无论鼠标的位置在哪 ...
- 转 一个SMD 0805的LED的电流,电压,亮度关系表
Vf就是led的导通电压. 一个SMD 0805的LED的电流,电压,亮度关系表Vf If(算) 亮度1.74v 0.46mA 做指示灯不刺眼刚 ...
- CF 1016 C —— 思路
题目:http://codeforces.com/contest/1016/problem/C 一定是先蛇形走在回形走,所以预处理.暴力即可: 自己一开始写了一个,总是WA,又看了看TJ写法: 模仿一 ...
- 洛谷 P3398 仓鼠找sugar —— 树链剖分
题目:https://www.luogu.org/problemnew/show/P3398 树链剖分一下,路径就变成线段树上的几个区间: 两条路径相交就是线段树上有区间相交,所以在相应位置打个标记, ...
- CF19 E Fairy——树上差分
题目:http://codeforces.com/contest/19/problem/E 先把图连成一棵树,然后对于每条非树边,判断它是在奇环中还是偶环中: 把环上的点打上相应的差分标记,并记录有多 ...
- codeforces round #427 div2
A:读懂题,乘一下判断大小就行了 #include<bits/stdc++.h> using namespace std; int main() { int s, v1, v2, t1, ...
- 如何使jquery性能最佳
转自 http://www.cnblogs.com/mo-beifeng/archive/2012/02/02/2336228.html 1. 使用最新版本的jQuery jQuery的版本更新很快, ...