编译webkit gtk遇到的问题

libwebkitgtk及其依赖项.tar.gz 命令: sudo dpkg -i libwebp6_0.5.2-1_amd64.deb libjpeg62-turbo_1.5.1-2_amd64.deb libpng16-16_1.6.28-1+deb9u1_amd64.deb libicu57_57.1-6+deb9u4_amd64.deb libgtk-3-0_3.22.11-1_amd64.deb libjavascriptcoregtk-3.0-0_2.4.11-3_amd64.deb sudo dpkg -i libwebkitgtk-3.0-0_2.4.11-3_amd64.deb 立即下载

浏览器内核中,以我对Mozilla Firefox比较熟悉,并为其写过扩展。不过Webkit这几年绝对值得注意,并且在mobile平台上,Webkit比Firefox要成功。

 

了解开源一个项目,从source build开始。我选择的是webkit-gtk,因为我有个配置良好的ubuntu VM。

帮助页面http://trac.webkit.org/wiki/BuildingGtk,说明了其它库依赖:

  • autoconf
  • automake
  • libtool
  • libgtk2.0-dev (>= 2.10)
  • libpango1.0-dev (>= 1.16)
  • libicu-dev
  • libxslt-dev
  • libsoup2.4-dev (>= 2.27.4) (*)
  • libsqlite3-dev
  • gperf
  • bison (>= 2.4.1)
  • flex
  • libjpeg62-dev
  • libpng12-dev
  • libxt-dev
  • autotools-dev
  • libgstreamer-plugins-base0.10-dev
  • libenchant-dev
  • libgail-dev
  • libgeoclue-dev
  • gtk-doc-tools

直接用apt-get 全部安装。

这一步简单.

 

再来是构建:

$ ./autogen.sh --prefix=/path/to/install/directory 
$ make

出错了,同一页面说明了原因:
(*)   Libsoup 2.29.3 tar ball release is missing libsoup/soup-content-decoder.h .
SOUP_TYPE_CONTENT_DECODER is defined in the header file and it will
result in a compilation error: WebKit/gtk/webkit/webkitprivate.cpp:290:
error: 'SOUP_TYPE_CONTENT_DECODER' was not declared in this scope
.
  libsoup 2.28.2 works.


但是我想,如果自己patch一下,应该更快,不用安装什么旧版本。
所以我自己把
libsoup/soup-content-decoder.h
放到了适当的位置,再把用到decoder的代码删改一下。。

$ ./autogen.sh --prefix=/path/to/install/directory
$ make
$ ./Programs/GtkLauncher

一个简单的Webkit浏览器,就通过XMing显示出来了。。 (Release版前后编译折腾了一两天)

今天中午忽然想用GDB调试,所以加了个参数:
$ ./autogen.sh --prefix=/path/to/install/directory --enable-debug
$ make

结果总是出现:
CXXLD libwebkit-1.0.la
collect2: ld terminated with signal 9 [Killed]

网上一查,是因为内存不足,
学习http://blog.youkuaiyun.com/flowingflying/archive/2009/12/01/4915330.aspx中的方法,
加了个2G的swap文件,再make.

四小时多过去,gdb GtkLauncher
b main
r
成功了~~




光电式烟雾传感器实战指南(一) 光迷宫设计与散射原理篇 本文深入解析了光电式烟雾传感器的核心部件——光迷宫的设计原理与光散射机制。文章详细阐述了如何通过精心设计的光学结构实现‘透气不透光’,并重点探讨了前向散射(尤其是135°角)在提升烟雾监测系统灵敏度与可靠性中的关键作用,为DIY爱好者提供了从理论到实践的完整指南。 阅读详情

相关推荐

MobaXterm破解14个会话限制的保姆级教程(附Python环境配置指南)

本文提供了MobaXterm破解14个会话限制的详细教程,并深入讲解了如何配置稳定的Python环境以支持相关脚本运行。通过理解软件授权机制、安全实践步骤以及许可文件的应用,帮助用户解除会话数量限制,实现高效的远程服务器管理与自动化运维。

weixin_29211309的博客 1636

tauri v2 最新版github CI/CD配置文件

tauri v2如果使用v1的配置文件就会报错,下面是适合v2的版本,自行调整到适合你的项目。

2301_78960337的博客 867

DINOv2 基于自定义数据集进行图片分类预测

(前提是安装好pytorch)1. pip安装2. 下载dinov2提供的预训练模型,需要自行前往网站上查找dinov2模型进行下载。模型需要下载三个文件:下载完成后将上述三个文件放置在本地一个名为dinov2_base的文件夹中即可。

sinat_34770838的博客 6665

在Linux下编译WebkitGtk

本以为编译WebkitGtk是个很简单的工作,没想到竟然颇费了些功夫。 1、准备 WebKit的官方网站是http://webkitgtk.org/,上面可以下载到当前稳定版本的WebKitGtk1.4.1。但是WebKit官方wiki上有一篇文章“Building WebKitGTK+“,看内容好像WebKitGtk的源代码已经融合近了主线WebKit,但是主线WebKit的代码

yezi_zhi的专栏 5279

Windows系统3D Gaussian Splatting环境搭建全攻略:从零开始到成功运行

本文详细介绍了在Windows系统上搭建3D Gaussian Splatting环境的完整流程,包括CUDA 12.6安装、Anaconda环境配置、代码获取与依赖安装等关键步骤。针对Windows平台特有的环境配置问题,提供了实用的解决方案和常见错误排查方法,帮助开发者快速实现3D Gaussian Splatting的成功运行。

weixin_30832143的博客 452

【一步到位】Android Studio 实现安卓连接阿里云物联网云平台

最新版本目前是Android Studio Iguana | 2024.1.2,你可以到官网上去找之前的版本,手上有工作项目的不要去轻易尝试,说不定你就编译失败了,失败了也不要担心,解决就可以了。

m0_73799445的博客 1万+

终极指南:Astroid邮件客户端如何完成libsoup2.4到webkit2gtk4.0的无缝迁移

Astroid是一款基于Notmuch的轻量级图形化邮件客户端,以其线程标签式管理和高效性能深受用户喜爱。本文将深入解析Astroid如何从libsoup2.4和webkit2gtk4.0成功迁移,为开发者提供完整的技术迁移路线图。 ## 📌 迁移背景:为何选择webkit2gtk4.0? 随着Linux桌面环境的快速发展,旧版libsoup2.4和webkit2gtk库已无法满足现代邮件客

gitblog_07054的博客 483

28-基于STM32单片机的便携式健康监测系统设计与实现(程序+原理图+元件清单)

本文详细介绍了基于STM32单片机的便携式健康监测系统设计与实现,该系统集成MAX30102光电传感器和MSP20压力传感器,实时监测心率、血氧和血压等关键生理指标。通过STM32F103C8T6主控芯片和HC-05蓝牙模块,实现数据采集、处理及无线传输,具有便携性高、操作简便等特点,适用于家庭健康监护和户外运动场景。

weixin_29191669的博客 420

从零开始成为GStreamer专家——HTTPS支持

Gstremer https支持

intel1985的专栏 1783

STM32低功耗模式下ADC采样抖动的5个隐藏陷阱及解决方案(实测避坑)

本文深入探讨了STM32低功耗模式下ADC采样抖动的5个常见陷阱及解决方案,包括多通道采样电压跃迁、外设开关信号稳定、低功耗模式与ADC时钟同步、输入阻抗失配以及基准电压稳定性问题。通过实测数据和优化代码示例,帮助工程师有效规避ADC采样数据抖动问题,提升物联网设备的测量精度和稳定性。

weixin_30316097的博客 381

CMOS图像传感器——工作原理

CMOS图像传感器的曝光与读出

沧海一升的博客 9459

linux下编译webkit,ubuntu下编译webkit

1.下载webkit源码,由于ubuntu版本为10.04,所以下载的webkit版本也比较靠前。2.解压到文件夹下,运行/WebKit-r58572/WebKitTools/Scripts/build-webkit --gtk3.遇到错误:1).Warning: not running gtk-docize.automake: cannot open < gtk-doc.make: No ...

weixin_39640221的博客 480

利用恒源云在云端租用GPU服务器训练YOLOv10模型(包括Linux系统命令讲解)

为当涉及到深度学习的训练任务时,GPU的计算能力是不可或缺的。相对于传统的中央处理器(CPU),图形处理器(GPU)具有更强大的并行计算能力,能够显著加速深度学习模型的训练过程。深度学习算法通常涉及大量的矩阵运算和张量操作,而GPU的并行计算架构使得它们能够高效地执行这些计算,从而加速模型训练的速度。恒源云是一个经济高效的云计算平台,您可以通过恒源云的控制台或者命令行界面来管理实例、上传和下载数据、执行训练任务等。

Snu77的博客 1891

有关webkit-gtk

编译较新版本的webkit-gtk(WebKit-r154098)遇到的问题; 环境:ubuntu12.04 64bit 参考文档:http://trac.webkit.org/wiki/BuildingGtk 1) 需要ggc 4.7,ubuntu12.04默认是4.6,需要升级gcc 2)启动需要脚本,Tools/Scripts/run-launcher --gtk --debug

技术的学习与积累是个技术活 2298

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

webkit2gtk-rs 项目常见问题解决方案

webkit2gtk-rs 项目常见问题解决方案 项目基础介绍 webkit2gtk-rs 是一个 Rust 语言的绑定和包装库,用于 webkit2gtk。webkit2gtk 是一个基于 WebKit2 的 GTK+ 库,用于在桌面应用程序中嵌入 Web 内容。该项目的主要编程语言是 Rust,同时也涉及一些 C 语言代码。 新手使用注意事项及解决方案 1. 依赖库未安装 问题描述:新手在尝试...

gitblog_00226的博客 1036

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

ubuntu下编译webkit

1.下载webkit源码,由于ubuntu版本为10.04,所以下载的webkit版本也比较靠前。 2.解压到文件夹下,运行/WebKit-r58572/WebKitTools/Scripts/build-webkit --gtk 3.遇到错误:   1).Warning: not running gtk-docize. automake: cannot open Failed to

ghost045的专栏 1469

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

webkit linux 编译,Ubuntu编译Webkit的方法及命令

webkit是一个浏览器内核,google的chrome就是基于它的,接下来介绍一下如何在Ubuntu 11.04下编译Webkit源代码。网上有大量的关于如何在Windows下或者如何用Qt来编译Webkit,这篇文章不对此进行介绍,只介绍如何在命令行下编译Webkit源代码:1.下载:在http://nightly.webkit.org/ 下载webkit的最新版本源码,我的是WebKit-r...

weixin_39828331的博客 297

GTK版WebKit编译详细步骤

GTK版WebKit编译步骤 1. 环境准备 linux操作系统,我用的Ubantu 14.04; 必须可以上网; 执行以下命令安装必要工具: sudo apt-get install git-core gcc g++ 2. 获取WebKit源代码

plc_jianghao的专栏 8033

ubuntu 10.04编译webkit gtk过程

这天工作上没什么安排,打算研究下webkit,从http://nightly.webkit.org/builds/trunk/src/1下载到webkit源码进行编译,没想到遇到不少问题,还把虚拟机的里ubuntu系统启动不了,最终落得重温重装ubuntu系统。以下是编译 webkit过程遇到的种种不良的情况,希望对编译webkit的盆友有所帮助。 我的环境:32位ubu...

weixin_34187822的博客 180

webkit学习

一.Webkit的由来 1. 十几年前的故事 1994年,Netscape浏览器曾占据整个浏览器市场的90%,风头无二(也很嚣张)。但随着微软推出win95后,把IE 1.0做为win95的插件发布,开始挑战Netscape的霸主地位,到发布IE 4.x,短短三年时间,打败Netscape。 这里面虽然说有与windows集成的原因,但从本身的功能上来讲, IE从速度和对标准的支持上来讲,

hgl868的专栏 5900

有关webkit编译遇到的一些错误

1.在webkit编译的过程中总是遇到一些glib的版本找到新的但是又发现旧的这种错误这种情况 在编译的时候 加上 ../../configure --with-gtk=2.0 --disable-glibtest --disable-schemas-compile 就会绕过这个错误。 make -t 这个又是是很管用

东辉在线的专栏 1530

随手记

1. 今天编译webkit时遇到无法识别宏"AM_PATH_GLIB_2_0"的错误     解决方法: 设置环境变量ACLOCAL_FLAGS供aclocal使用,   export ACLOCAL_FLAGS="-I /home/bsquare/webkit-lib/share/aclocal"     注意: 该宏是供aclocal使用, configure时不起作用 2. 编

finding的专栏 2093

libwebkit2gtk-4.1-0安装全指南:从依赖原理到排错实战

在Linux桌面生态中,GTK应用与WebKit引擎的结合催生了WebKitGTK这一关键组件,而libwebkit2gtk-4.1-0作为其运行时库,正被越来越多的AI编程助手和桌面工具设为强制依赖。理解动态链接库的ABI差异、apt软件源的管理机制,是解决“无法定位软件包”和依赖冲突的基础。本文从WebKit渲染引擎与GTK工具包的协作原理出发,剖析4.0与4.1版本不兼容的根源,并根据Debian、Ubuntu不同发行版的软件源特点,给出PPA、backports等适配方案。同时涵盖环境变量配置、开发

weixin_28840143的博客 247

解决Arnis在Linux下的启动崩溃:图形渲染优化指南

你是否遇到过这样的情况:在Linux系统中启动Arnis时,界面毫无反应或直接崩溃?作为一款能将现实世界城市生成到Minecraft中的工具,Arnis的图形界面(SGUI)依赖WebKit2GTK渲染引擎,但在部分Linux设备上会因GPU驱动兼容性问题导致启动失败。本文将深入分析这一问题的技术根源,并提供经过验证的解决方案。 ## 问题表现与技术根源 Arnis使用Tauri框架构建跨平台...

gitblog_01180的博客 624

Handy 离线语音转文字编译安装排障:Tauri + Rust 环境从零跑通的实操指南

Handy 是一款完全离线运行的开源语音转文字应用,声音在本地完成识别,不经过任何云端。如果你要自己动手完成 Tauri 编译并跑通语音识别,本文按"启动前 → 编译中 → 首次运行 → 运行后"四个阶段,把 bun 缺失、cc 链接失败、GTK/WebKit 缺库、模型下载失败、Wayland 窗口异常等高频坑逐一给出命令级对策,目标是让你少走回头路。 ## 30 秒速览 先记住这几条,后面

gitblog_00081的博客 376

Wyeb 项目常见问题解决方案

Wyeb 项目常见问题解决方案 Wyeb 是一个类似 Vim 的基于 webkit2gtk 的网页浏览器,其灵感来源于 dwb 和 luakit,主要使用 C 语言进行开发。 1. 项目基础介绍和主要编程语言 项目介绍: Wyeb 是一个轻量级的网页浏览器,它模仿了 Vim 的操作方式,为用户提供了类似于命令行界面的浏览体验。项目支持自定义设置,可以通过文本编辑器进行配置文件的修改,同时支持根据正...

gitblog_01091的博客 658
上一篇: 苹果公布了WWDC2010的视频和演讲文档
下一篇: 可恶的s60字模,就不信找不着你!
JoyerHuang_悦
博客等级 码龄23年 101粉丝 111原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值