CEF(Chromium Embedded Framework)是一个基于Google Chromium 的开源项目,它允许开发者创建基于Chromium内核的应用程序,支持HTML5和其它Web标准,目前已支持多种语言的绑定,如C/C++, Java, C#等。本指南主要介绍如何在linux系统上编译CEF3,并将编译后的库应用在项目当中。
假设需要编译最新版本CEF 3.3397.1880:
### 一、从Github下载CEF源码
CEF3源码存放在Github(https://github.com/chromiumembedded/cef),git命令:
git clone --recursive https://github.com/chromiumembedded/cef.git cef-3.3397.1880
### 二、安装编译依赖
CEF3编译需要几个第三方库:alsa-lib、gtk2、gtk3、libudev 、libgconf、nm、nss、at-spi2,在Ubuntu/Debian下可以用如下命令安装:
sudo apt install libudev-dev libgconf-2-4 libasound2-dev libxt-dev libxss-dev libnss3-dev libpci-dev libdbus-1-dev libat-spi2-dev libglib2.0-dev libgtk2.0-dev libgtk-3-dev
### 三、下载Chromium依赖
CEF3编译依赖于Chromium浏览器,需要下载Chromium源码仓库:
# 配置 repo,当前CEF依赖Chromium 74.0.3729.131版本
repo init -u https://chromium.googlesource.com/chromium/src.git -b 74.0.3729.131
# 下载Chromium源码
repo sync
### 四、编译CEF
CEF的编译是一个复杂的过程,编译脚本位于编译CEF所需的脚本《cef_create_projects.sh》,该文件位于源码根目录,可以通过如下命令运行它:
#其中:
#–url 参数我们指定下载chromium源码的地址;
#–depot-tools-dir 参数指定Git分支下载工具 repo
#–x64 参数指编译64位库;
#–no- Brackets 参数指编译代码时仅编译必要的内容;
#–cef-root 参数指指定CEF项目的根目录
./cef_create_projects.sh --url=https://chromium.googlesource.com/chromium/src.git --depot-tools-dir=/path/to/depot_tools --x64 --no-brackets --cef-root=/path/to/cef/
执行上述命令后即可在CEF根目录下生成一个用于GN编译的文件夹,比如Release_GN_x64,此时可以在这个目录下执行ninja生成CEF的Release版本,执行如下命令:
ninja -C Release_GN_x64/
编译后的文件位于`out/Release_GN_x64` 目录,主要有几个类型的文件:.so库文件、.dylib库文件和.a静态库,以及浏览器可执行文件 `cefclient`、`cef_sandbox`等,可以根据要求复制这些文件到指定的位置。
### 五、在项目当中使用编译出的库
编译后,只需要在项目编译连接设置中添加`libcef_dll_wrapper` 和`libcef` 链接库即可,如果需要实现V8绑定,还可以在项目当中增加`.jar` 和`.h`文件,并添加”JNI_CEF”的预编译链接即可。
总之,编译CEF比较复杂,本文介绍了在Linux下CEF3的编译过程,完成编译后,只需要将编译后生成的库添加到项目中就可以便捷的使用它了。
香港服务器选创新互联,2H2G首月10元开通。
创新互联(www.cdcxhl.com)互联网服务提供商,拥有超过10年的服务器租用、服务器托管、云服务器、虚拟主机、网站系统开发经验。专业提供云主机、虚拟主机、域名注册、VPS主机、云服务器、香港云服务器、免备案服务器等。
分享名称:Linux下CEF3编译指南(linuxcef3编译)
分享URL:http://www.csdahua.cn/qtweb/news39/391139.html
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网