准备工作
1、寻找自己需要的CEF版本,这里Branch为4389,commit为b36241d
参考链接:chromiumembedded / cef / wiki / BranchesAndBuilding — Bitbucket


这里windows编译需求为:Win 7+ deployment, Win 10+ build system w/ VS2017 15.7.1+, Win 10.0.19041 SDK, Ninja
2、使用Vmware创建一个纯净虚拟机,系统要求是大于等于win7系统,我这里选择win10。
3、VS版本要求大于等于VS2017 15.7.1+,这里选择VS2019社区版
4、Windows SDK选择要求的Win 10.0.19041 SDK
5、由于编译中需要Microsoft Visual Studio 14.0的相关文件,所以下载VS的时候需要把VS2015的支持也勾选上
下载源码
1、首先确保自己有梯子环境,而且需要梯子质量好一些,不然容易下载出问题。
2、使用下方脚本即可下载CEF的源码和工具,注意下面的 Branch 和 checkout(commit) 需要填成自己需要的版本
注意:源码有可能一次性下载不完整,导致编译出现各种各样的奇怪问题,如果发现编译失败,那么就多下载几遍就可以解决了。
set CEF_USE_GN=1
set GN_DEFINES=is_official_build=true
set GYP_DEFINES=buildtype=Official
set GYP_MSVS_VERSION=2019
set CEF_ARCHIVE_FORMAT=tar.bz2
@REM 第一次源码下载不加--no-depot-tools-update,会先包工具包下下来【建议一直不加】
python automate-git.py --download-dir=C:\code\src --branch=4389 --checkout=b36241d --no-build --no-distrib --force-clean --force-clean-deps
编译源码
使用下面的代码就可以正常编译一个支持MP4的CEF版本了
set CEF_USE_GN=1
set GN_DEFINES=is_official_build=true
set GYP_DEFINES=buildtype=Official
set GYP_MSVS_VERSION=2019
set CEF_ARCHIVE_FORMAT=tar.bz2
@REM 添加MP3、MP4支持 使用此条指令
set GN_DEFINES=is_official_build=true proprietary_codecs=true ffmpeg_branding=Chrome
set GYP_GENERATORS=ninja,msvs-ninja
set GN_ARGUMENTS=--ide=vs2019 --sln=cef --filters=//cef/*
@REM VS2017安装在默认目录,但任然需要下面设置,可能是由于VS2015和VS2017同时安装,路径根据自己的安装目录和版本确定
set WIN_CUSTOM_TOOLCHAIN=1
set CEF_VCVARS=none
set GYP_MSVS_OVERRIDE_PATH=C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
set SDK_ROOT=C:\Program Files (x86)\Windows Kits\10
@REM 编译64位调用VS的脚本有问题,环境变量还是去找的32位路径,下面改手动设置路径
@REM call "C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Auxiliary/Build/vcvarsall.bat" x64
@REM set INCLUDE=C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\atlmfc\include;%INCLUDE%
@REM set PATH=C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x86;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\Hostx64\x64;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\Hostx86\x86;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Redist\MSVC\14.29.30133\x86\Microsoft.VC142.CRT;%PATH%
@REM set LIB=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0\um\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0\ucrt\x86;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\lib\x86;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\atlmfc\lib\x86;%LIB%
@REM set VS_CRT_ROOT=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\crt
set INCLUDE=C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\atlmfc\include;%INCLUDE%
set PATH=C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x86;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\Hostx64\x64;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\Hostx86\x86;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Redist\MSVC\14.29.30133\x86\Microsoft.VC142.CRT;%PATH%
set LIB=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0\um\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0\ucrt\x86;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\lib\x86;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\atlmfc\lib\x86;%LIB%
set VS_CRT_ROOT=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\crt
python3 automate-git.py --download-dir=C:\code\src --branch=4389 --checkout=b36241d --no-update --no-debug-build --build-log-file --verbose-build --force-distrib --force-build
pause
下载地址
PDB文件: https://mypikpak.com/s/VNm45NMJefmMo6tv7WTAK0qwo1 cef_binary_89.0.18+gb36241d+chromium-89.0.4389.114_windows32_release_symbols.tar.bz2
CEF文件: https://mypikpak.com/s/VNm46jmJAE17C0LmSdEDOWI6o1
cef_binary_89.0.18+gb36241d+chromium-89.0.4389.114_windows32.tar.bz2
相关链接
chromiumembedded / cef / wiki / AutomatedBuildSetup — Bitbucket (*´∇`*) 被你发现啦~ windows平台编译CEF支持MP3、MP4 Longxr's blog (longxuan.ren) chromiumembedded / cef / wiki / BranchesAndBuilding — Bitbucket chromiumembedded / cef — Bitbucket 记录一次项目中CEF版本的升级(二):CEF编译 - river12 - 博客园 (cnblogs.com)
Comments