windows下cef源码下载和编译

脚本源码:GitHub - sway913/cef_build: build cef source

更新:

推荐使用windows下docker进行编译,稳定可靠。具体参考脚本里面的脚本。

0、系统环境设置

1、安装好python3.9并且设置到系统path环境

2、把系统语言设置为英文

 在英文环境下编译才不会报错

3、代码内文件路径不能太长,建议在根磁盘目录创建1个文件夹,推荐如下目录

D:\\code\\scripts\\*.bat

1、源码下载

执行01.win.prepare_env.bat下载好相关工具,然后执行02.win.download_source.bat下载源码(大概要下载50GB的内容)

在这里下载cef的5414版本,使用vs2019进行编译。

参考:https://bitbucket.org/chromiumembedded/cef/wiki/BranchesAndBuilding.md

vs2019安装需要勾选atl组件或者:

$ PATH_TO_INSTALLER.EXE ^
--add Microsoft.VisualStudio.Workload.NativeDesktop ^
--add Microsoft.VisualStudio.Component.VC.ATLMFC ^
--includeRecommended

参数说明:

download-dir: 代码下载目录

depot-tools-dir: 工具目录

branch: 要编译的分支,可以参考Current Release Branches (Supported) — Bitbucket

–no-update:不更新Chromium或CEF

–no-depot-tools-update:不更新depot-tools

–no-distrib:不打包

–no-build:不编译

–force-clean:强制清理Chromium和CEF,这将触发一个新的更新、构建和发布

注:更多参数可以使用命令python automate-git.py --help查看

2、编译

执行03.win.build_cef.bat进行编译(debug和release都需要大概5个小时),可以修改里面相关参数匹配好你的安装好的环境。

3、验收成果

在chromium\src\out目录下,打开 cefclient.exe 文件,访问http://html5test.com 可简单查看功能编译情况。访问HTML5 audio/video tester - File type player - MIME type tester (woolyss.com) 来判断各种视频格式的支持情况

4、遇到的问题

1、RuntimeError: requested profile "D:\code\chromium_git\chromium\src\chrome\build\pgo_profiles\chrome-win64-5414-1673458358-5348276ff887eb95bb837c1dd06e9efed673b8e4.profdata" doesn't exist, please make sure "checkout_pgo_profiles" is set to True in the "custom_vars" section of your .gclient file, e.g

出现这个报错需要设置chrome_pgo_phase=0

 参考:PGO profiles needed for is_official_build = true (google.com)

2、UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd2 in position 738: invalid continuation byte

需要把文件从UTF-8转为UTF-8-BOM编码,推荐用英文版系统编译,中文版要改的代码太多。

要在 Windows 环境下使用 C++ 编译 Chromium Embedded Framework (CEF) 的源代码,需要遵循一系列复杂的步骤,包括准备开发环境、获取源代码、配置构建工具以及执行编译过程。 ### 准备开发环境 要编译 CEF,首先需要安装以下工具依赖项: - **Windows 10 或更高版本**:CEF 的构建过程需要较新的 Windows 版本以支持所需的开发工具。 - **Visual Studio 2019 或更高版本**:CEF 使用 MSVC 编译器进行构建,因此需要安装支持 C++ 的 Visual Studio 版本。 - **Windows SDK**:确保安装了与目标 Windows 版本兼容的 SDK。 - **Python 3.x**:CEF 的构建脚本依赖于 Python。 - **Git**:用于从 GitHub 获取 CEF 源代码。 ### 获取 CEF 源代码 CEF 的源代码可以通过其官方 GitHub 仓库获取: ```bash git clone https://bitbucket.org/chromiumembedded/cef.git ``` 确保切换到与目标 Chromium 版本兼容的分支或标签。 ### 配置构建工具 CEF 提供了一个名为 `automate-git.py` 的脚本,可以自动下载依赖项并配置构建环境。运行以下命令来配置构建环境: ```bash python automate-git.py --download-dir <下载目录> --branch <目标分支> --build ``` 该脚本会自动下载 Chromium 源代码并配置 CEF 的构建环境。 ### 构建 CEF 构建 CEF 的过程涉及使用 `cmake` `ninja` 工具。CEF 提供了一个 `CMakeLists.txt` 文件,可以用于生成构建文件。以下是构建的基本步骤: 1. 创建一个构建目录并进入该目录: ```bash mkdir build cd build ``` 2. 使用 `cmake` 生成构建文件: ```bash cmake -G "Visual Studio 16 2019" -A x64 .. ``` 这里的 `-G` 参数指定了生成的构建工具,`-A` 参数指定了目标架构。 3. 使用 `cmake` 配置生成构建文件后,可以使用 `ninja` 进行构建: ```bash ninja -C out/Debug ``` ### 构建示例应用程序 CEF 提供了一些示例应用程序,可以用于测试构建是否成功。这些示例通常位于 `cef_binary_3.3325.1756.g6d8faa4_windows64.tar.bz2` 包含的示例目录中[^1]。构建示例应用程序可以帮助验证 CEF 是否正确编译。 ### 注意事项 - **磁盘空间**:构建过程可能需要大量的磁盘空间,建议预留至少 50GB 的空间。 - **网络连接**:由于需要下载大量的依赖项,稳定的网络连接是必需的。 - **构建时间**:首次构建可能需要较长时间,具体取决于硬件性能。 ### 相关问题 1. 如何在 Linux 环境下编译 CEF 源码? 2. CEF 支持哪些版本的 Chromium? 3. 如何调试 CEF 应用程序? 4. CEF 的许可证是什么? 5. 如何在 macOS 上编译 CEF 源码? 这些问题答案可以帮助进一步理解解决在 Windows 环境下使用 C++ 编译 CEF 源码的相关挑战。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值