CEF源码下载遇到错误

错误示例

Error: Command 'vpython.bat src/third_party/depot_tools/download_from_google_storage.py --no_resume --platform=win32 --no_auth --bucket chromium-gn -s src/buildtools/win/gn.exe.sha1' returned non-zero exit status 1 in D:\code\chromium_git\chromium
Hook 'vpython.bat src/third_party/depot_tools/download_from_google_storage.py --no_resume --platform=win32 --no_auth --bucket chromium-gn -s src/buildtools/win/gn.exe.sha1' took 33.03 secs
Traceback (most recent call last):
  File "..\automate\automate-git.py", line 1385, in <module>
    run("gclient runhooks --jobs 16", chromium_dir, depot_tools_dir)
  File "..\automate\automate-git.py", line 70, in run
    args, cwd=working_dir, env=env, shell=(sys.platform == 'win32'))
  File "d:\code\depot_tools\bootstrap-3_8_0_chromium_8_bin\python\bin\lib\subprocess.py", line 190, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['gclient', 'runhooks', '--jobs', '16']' returned non-zero exit status 2

在这里插入图片描述

解决方案

官网wiki文档可知

构建工具不支持旧版本的CEF,如果选择构建旧分支,则需要自己解决任何构建错误
构建旧版本CEF,可以使用与当前分支相同的工具构建
1.手动下载depot_tools
2.将depot_tools同步到分支时存在的修订版
3.设置DEPOT_TOOLS_UPDATE=0环境变量,以防止其自动更新
4.获取对应分支的CEF
5.获取对应分支的Chromium
6.由于此处我用的VS2015,构建的时候需要设置GN_DEFINES=is_win_fastlink=true改进编译和链接时间

手动切换depot_tools

可以根据CEF版本找到depot_tools版本
在这里插入图片描述
利用git工具切换depot_tools分支
在这里插入图片描述
或者Cmd执行

call git checkout ba28e460fb0899ffe80c1d1364a3e02d4a2e8855
DEPOT_TOOLS_UPDATE=0

在这里插入图片描述
切换建议备份之前的update_depot_tools.bat文件

CEF源码下载详细步骤及集成完整多媒体功能
官方CEF编译步骤及错误解决
CEF开发知识总结

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
CEF视图插入源码的过程如下: 1. 首先,需要下载和安装CEF库。可从CEF的官方网站上获取。在安装过程中,请确保选择相应的平台和编译器。 2. 完成CEF库的安装后,打开你的源代码项目。将CEF库的路径添加到项目的编译配置中。具体步骤可能因你所使用的IDE而异,通常在项目属性或配置文件中可以找到这些选项。 3. 创建一个新的类或文件来承载CEF视图。这个类将是你在应用程序中使用CEF的接入点。你可以将其命名为"CEFForm"或其他相关的命名。 4. 在CEFForm类中,需要包括CEF库的头文件,并且在类的成员变量中添加一个CEF的View指针,用于在应用程序中显示CEF视图。例如:`CefRefPtr<CefBrowser> browser;` 5. 在CEFForm类的构造函数中,需要调用CEF库的初始化函数。可以使用CefSettings结构体来配置CEF的一些参数。例如:`CefInitialize(settings, nullptr, nullptr, nullptr);` 6. 在CEFForm类的析构函数中,调用CEF库的关闭函数。例如:`CefShutdown();` 7. 在应用程序的主窗口中,创建一个CEFForm类的实例。根据你的应用程序结构,可以选择将视图嵌入到一个窗体控件中,或者作为整个窗口的内容。 8. 调用`CreateBrowser()`函数,通过创建一个CEF浏览器对象并指定URL,以在应用程序中加载网页。例如:`browser = CefBrowserHost::CreateBrowserSync(windowInfo, handler.get(), url, browserSettings, nullptr);` 9. 最后,运行你的应用程序,你将能够看到CEF视图在应用程序窗口中加载和显示网页。 通过上述步骤,你可以将CEF视图插入到你的源码中,并在应用程序中使用CEF来加载和显示网页内容。注意,这只是一个简要的步骤指南,实际操作可能会因具体的应用程序和编程语言而有所不同。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

离歌漠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值