mac cef 从编译到分发

fetch source
稳定的chromium版本
官方自动构建参数

建议用python虚拟环境做一个python 3.9 用来操作整个过程

如果要在其他gui app中使用cef, 不可直接引用git clone后的cef源码,
要么基于cef-project 修改,
要么自己编译, 由于我希望支持mp3 h264,所以我自己编译,编译时不要使用提取代码

需要复制的头文件参考cef-project的README

在官方的基础上加ffpage支持

#!/bin/bash
export GN_DEFINES=is_official_build=true
export CEF_ARCHIVE_FORMAT=tar.bz2
python3 ../automate/automate-git.py \
--download-dir=/Users/hbb/code/chromium_git \
--depot-tools-dir=/Users/hbb/code/depot_tools \
--no-build \
--branch=6998 \
--minimal-distrib \
--client-distrib \
--force-clean \
--arm64-build \
--with-pgo-profiles 

python3 automate-git.py  

update component

#!/bin/sh
export CEF_ARCHIVE_FORMAT=tar.bz2
export GN_DEFINES=is_official_build=true  ffmpeg_branding=Chrome prop3rietary_codecs=true rtc_use_h264=true 
#set GN_ARGUMENTS=--filters=//cef/*,//media/*,//third_party/ffmpeg/*  #按需设置过滤,不过滤则全编译
python3 tools/gclient_hook.py

cd chromium/src目录
ninja -C out/Release_GN_arm64 cef

编译完了生成分发包 (如果用cef-project 修改,不需要这个步骤

由于分发包需要编译sandbox的静态库,所以还需要参照这个链接设置
编译静态链接的sandbox

brew install doxygen #如果要生成文档,选安装这个工具

cd /Users/hbb/code/chromium_git/chromium/src/cef/tools
python3 make_distrib.py \
  --output-dir="../../../binary_distrib" \
  --ninja-build \
--no-archive --no-symbols --no-docs \
  --arm64-build

#可选项 --allow-partial --sandbox --ninja-build --x64-build --no-archive --no-symbols --no-docs
posted @ 2025-04-12 17:29  马肯尼煤牙巴骨  阅读(133)  评论(0)    收藏  举报