ubuntu18.04编译webkitgtk

34 篇文章 3 订阅
8 篇文章 1 订阅
本文介绍了如何从webkitgtk官网获取并编译webkitgtk源码,详细步骤包括下载源码、安装依赖、配置、编译以及解决因内存不足导致的编译问题。在编译过程中,通过增加交换文件来扩大内存,最终成功完成编译并安装。测试时发现已启用MiniBrowser功能,同时讨论了可能使用的多媒体解码框架FFmpeg。
摘要由CSDN通过智能技术生成

1.获取webkit源码:

webkit官网获取源码包:

wget -c https://webkitgtk.org/releases/webkitgtk-2.30.0.tar.xz

2.解压源码并安装依赖

执行:

webkitgtk-2.30.0$ ./Tools/gtk/install-dependencies

还需要再安装一个woff2包,执行命令:

sudo apt install libwoff2*

3.配置

Webkit是用cmake构建的,在顶层目录webkitgtk-2.30.0下,执行:

cmake -DPORT=GTK -DCMAKE_BUILD_TYPE=RelWithDebInfo -GNinja -DENABLE_MINIBROWSER=ON -DUSE_WPE_RENDERER=OFF -DENABLE_GAMEPAD=OFF -DENABLE_BUBBLEWRAP_SANDBOX=OFF

4.编译

编译过程非常吃内存,如果内存不足,很可能遇到下面的错误:

为了增加可用内存,最好有足够的交换空间,如果交换分区的空间不足,可以通过增加交换文件的方式在增加交换空间,过程如下:

首先关闭所有交换空间,执行

sudo swapoff -a

创建一个8G的交换文件

sudo dd if=/dev/zero of=/swapfile bs=64M count=128

格式化交换空间为交换分区格式

sudo mkswap /swapfile

修改模式:

sudo chmod 0600 /swapfile 

执行启动所有交换分区

sudo swapon -a
sudo swapon /swapfile
sudo swapon --show

然后继续编译,不再出之前的错误,编译过程中,交换分区和交换文件的占用变化情况如下:

最后发现摄制成8G的交换文件还是不够,不得不外挂一个32G的优盘专门作为交换磁盘,如下图:

内存不够的问题最终解决。

编译完成:

安装,执行ninja install

 5.测试:

安装完成,编译的时候选中了MiniBrowser,实际运行一下:

6.多媒体

可以发现在安装倚赖的过程中安装了libavcodec-dev,所以很可能Webkitgtk利用了FFMPEG作为底层解码框架。

HTML5多媒体测试:

基于gstreamer的多媒体框架:

单进程模式:

结束!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

papaofdoudou

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

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

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

打赏作者

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

抵扣说明:

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

余额充值