WebKit(适用2024年11月份版本)

WebKit是一个跨平台的web浏览器引擎。在iOS和macOS上,它支持Safari, Mail, Apple Books和许多其他应用程序。有关WebKit的更多信息,请参阅WebKit项目网站 WebKit project website.。

尝试最新版本

在macOS上,下载Safari技术预览版来测试最新版本的WebKit。在Linux上,下载Epiphany Technology Preview。但在Windows上,你必须自己构建它。

报告错误

1.搜索WebKit Bugzilla,看看是否有针对你遇到的bug的现有报告。

2.如果你还没有关于登录bug的账号。创建一个Bugzilla帐户来报告bug(并对其进行评论)。

3.按照我们的指导方针和规则提交bug。

一旦你的bug被归档,你就会在bug生命周期的每个阶段收到更新的邮件。在认为修复了错误之后,系统可能会要求您在latest nightly 下载最新版本,并确认修复对您有效。

获取代码

运行以下命令克隆WebKit的Git存储库:

复制代码
git clone https://github.com/WebKit/WebKit.git WebKit

你可以使用git config core来启用git fsmonitor,使许多git命令更快(比如git status)。fsmonitor真实

构建WebKit

搭建苹果开发平台

如果你还没有安装Xcode和它的命令行工具:

  1. https://developer.apple.com/downloads获取Xcode。要为OS X构建WebKit,需要Xcode 5.1.1或更高版本。要为iOS模拟器构建WebKit,需要Xcode 7或更高版本。

  2. 在终端安装Xcode命令行工具,运行命令:Xcode -select------Install

运行以下命令构建带有调试符号和断言的macOS调试构建:

复制代码
Tools/Scripts/build-webkit --debug

对于性能测试和其他目的,使用------release代替。

嵌入式的构建

要构建一个嵌入式平台,如iOS, tvOS,或watchOS,传递一个平台参数build-webkit。

例如,要为嵌入式模拟器构建带有调试符号和断言的调试构建:

复制代码
Tools/Scripts/build-webkit --debug --<platform>-simulator

或嵌入式设备:

复制代码
Tools/Scripts/build-webkit --debug --<platform>-device

这里的平台是ios, tvos或watchos。

使用Xcode

你可以打开WebKit。在Xcode中构建和调试WebKit。选择"Everything up to WebKit + Tools"方案来构建整个项目。

如果你没有在Xcode首选项中使用自定义构建位置,你必须更新工作空间设置,使用WebKitBuild目录。在菜单栏中,选择File > Workspace Settings,然后点击Advanced按钮,选择"Custom","Relative to Workspace",然后输入WebKitBuild构建中间代码,以致最终的产品执行文件。

构建GTK接口

对于生产版本:

复制代码
cmake -DPORT=GTK -DCMAKE_BUILD_TYPE=RelWithDebInfo -GNinja
ninja
sudo ninja install

对于开发构建:

复制代码
Tools/gtk/install-dependencies
Tools/Scripts/update-webkitgtk-libs
Tools/Scripts/build-webkit --gtk --debug

有关构建WebKitGTK的更多信息,请参阅wiki页面wiki page.。

构建WPE接口

对于生产版本:

复制代码
cmake -DPORT=WPE -DCMAKE_BUILD_TYPE=RelWithDebInfo -GNinja
ninja
sudo ninja install

对于开发构建:

复制代码
Tools/wpe/install-dependencies
Tools/Scripts/update-webkitwpe-libs
Tools/Scripts/build-webkit --wpe --debug

构建Windows接口

有关在Windows上构建WebKit,请参见Windows上的WebKit页面 WebKit on Windows page.

运行WebKit

与Safari和其他macOS应用程序

运行以下命令,使用本地构建的WebKit启动Safari:

复制代码
Tools/Scripts/run-safari --debug

run-safari脚本将DYLD_FRAMEWORK_PATH环境变量设置为指向构建产品,然后启动/Applications/Safari.app。DYLD_FRAMEWORK_PATH告诉系统加载器优先选择您的构建产品而不是安装在/ system /Library/ frameworks中的框架。

要使用本地构建的WebKit运行其他应用程序,请运行以下命令:

复制代码
Tools/Scripts/run-webkit-app <application-path>

iOS模拟器

运行以下命令,使用本地构建的WebKit启动iOS模拟器:

复制代码
run-safari --debug --ios-simulator

在这两种情况下,如果您构建的是发布版本,请使用------release而不是------debug。

要使用本地构建的WebKit运行其他应用程序,例如MobileMiniBrowser,请运行以下命令:

复制代码
Tools/Scripts/run-webkit-app --debug --iphone-simulator <application-path>
使用Xcode

开放的WebKit。xcworkspace,选择目标方案(如MobileMiniBrowser和iOS模拟器),单击运行。

Linux接口

如果你有一个开发版本,你可以使用run-minibrowser脚本,例如:

复制代码
run-minibrowser --debug --wpe

传送------gtk、------jsc-only或------wpe中的一个参数来指示来调用的接口。

Contribute贡献

恭喜你!你已经开始工作了。现在,您可以开始在WebKit中编写代码,并为项目贡献您的修复和新功能。有关向项目提交代码的详细信息,请参阅贡献代码。Contributing Code.

相关推荐
山楂树の8 分钟前
图像标注大坑:img图片 + Canvas 叠加标注,同步放大后标注位置偏移、对不齐?详解修复方案及亚像素处理原理
前端·css·学习·canva可画
本山德彪11 分钟前
我做了一个拼豆图纸生成器,把照片秒变图纸
前端
DTrader37 分钟前
用TS无法实盘量化? - 实盘均线策略
前端·api
进击的夸父40 分钟前
vfojs:Vue 超集架构,外壳React灵魂Vue
前端
编程老船长41 分钟前
解决不同项目需要不同 Node.js 版本的问题
前端·vue.js
Wect43 分钟前
LeetCode 5. 最长回文子串:DP + 中心扩展
前端·算法·typescript
漫游的渔夫44 分钟前
前端开发者做 Agent:别写成一次请求,用 5 步受控循环防止 AI 乱跑
前端·人工智能·typescript
kyriewen2 小时前
Webpack vs Vite:一个是“老黄牛”,一个是“猎豹”,你选谁?
前端·webpack·vite
打小就很皮...2 小时前
html2canvas + jsPDF 生成 PDF 的踩坑与解决方案总结
前端·pdf
全栈前端老曹2 小时前
【前端地图】多地图平台适配方案——高德、百度、腾讯、Google Maps SDK 差异对比、封装统一地图接口
前端·javascript·百度·dubbo·wgs84·gcj-02·bd09