编译Qt vs版本的Cef库,利用二进制包进行编译

CEF二进制下载链接:
Chromium Embedded Framework (CEF) Automated Builds

目前是用vs2017编译x64的包给Qt用(windows上用mingw需要自己改源码,github上有个成功的例子)
编译过程:
下载链接:https://download.csdn.net/download/hp_cpp/16077880
在这里插入图片描述
编译过程:
1.解压,建build文件夹
在这里插入图片描述
2.CMake编译出vs工程
在这里插入图片描述
其中source code路径就选择你加压的那个目录,build the binaries目录选择刚才新建的build目录。
选择vs2017 ,x64,我们这里是编译64位版本的cef
点击Finish

在这里插入图片描述
(中间有报错信息不用慌,最终可以成功编译的)

3./MT改成/MD,因为Qt的动态库版本,所以这样要对应上(如果是你自己编译的静态库版本的Qt则另当别论)
在这里插入图片描述
会看到:
在这里插入图片描述
4.在vs工程中编译

先做一件小小的修改:
在 文件夹cef_binary_80.1.15+g7b802c9+chromium-80.0.3987.163_windows64\tests\cefsimple目录中:simple_app.cc第89行
在这里插入图片描述
下载的源码中这里是http://www.google.com,导致打开cefsimple.exe时界面没有任何内容,改成如图所示的内容,则会很快出现百度的页面。
先编译出libcef_dll_wrapper,再编译cefsimple和cefclient
在这里插入图片描述
看到libcef_dll_wrapper.lib编译好了,就可以编译自带的例子了。
在这里插入图片描述
5.运行自带的demo
在这里插入图片描述
这些demo也编译和运行成功了,那么可以把这个库和相应的dll用到Qt vs版本的工程中去了

另外一些坑:

经过测试:

06/12/2019 - CEF 75.0.3+g699a922+chromium-75.0.3770.80 / Chromium 75.0.3770.80

07/24/2020 - CEF 84.3.7+g97011bc+chromium-84.0.4147.89 / Chromium 84.0.4147.89

这些库,在编译的时候,/MT不会报错,在编译cefsimple和 cefclient的时候,都会报(即使在CMake中将/MT改成/MD也一样会报错,我在Debug版中/MDd,release版本中全是/MD也一样报错),最后发现换其他版本的cef版本可以解决这个问题。

error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MTd_StaticDebug”不匹配值“MDd_DynamicDebug”

在这里插入图片描述

参考:
Chromium Embedded Framework (CEF) Automated Builds
Cef 的wiki参考网站
CEF避坑指南(一)——编译并自制浏览器

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值