You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Buildroot中的Qt5WebKit及qt-webkit-kiosk应用补丁

如何为指定Buildroot路径的文件应用补丁?

目标路径

  • ~/buildroot-2024.08.2/package/qt5/qt5webkit/
  • ~/buildroot-2024.08.2/package/qt-webkit-kiosk/

补丁应用步骤

1. 准备补丁文件

将提供的补丁内容保存为一个补丁文件,比如命名为qt5webkit-fix-paths.patch(注意原补丁中的>是显示截断,若实际使用时出现语法错误,需补全被截断的命令内容)。

2. 为qt5webkit目录应用补丁

进入目标目录:

cd ~/buildroot-2024.08.2/package/qt5/qt5webkit/

执行补丁命令:

patch -p1 < /path/to/qt5webkit-fix-paths.patch

如果补丁文件就在当前目录下,直接使用:

patch -p1 < qt5webkit-fix-paths.patch

参数-p1用于忽略补丁文件中路径的a/、b/前缀,适配当前目录的文件结构。

3. 处理qt-webkit-kiosk目录

检查~/buildroot-2024.08.2/package/qt-webkit-kiosk/目录下是否存在需要修改的同名文件(如qt5webkit.mk):

  • 若存在,重复步骤2,进入该目录后执行相同的补丁命令。
  • 若不存在相关文件,则无需额外操作。

完整补丁内容

diff --git a/package/qt5/qt5webkit/qt5webkit.mk b/package/qt5/qt5webkit/qt5webkit.mk
index 6912359674..a850a03ca9 100644
--- a/package/qt5/qt5webkit/qt5webkit.mk
+++ b/package/qt5/qt5webkit/qt5webkit.mk
@@ -50,6 +50,23 @@ ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y)
 QT5WEBKIT_CONF_OPTS += -DENABLE_SAMPLING_PROFILER=OFF
 endif

+define QT5WEBKIT_CONF_PRI
+       $(SED) 's/QT.webkit.includes =.*/QT.webkit.includes = \$$\$$QT_MODULE_INCLUDE_BASE \$$\$$QT_MODULE_INCLUDE_BASE\/QtWebKit/g' -e 's/QT.webkit.libs =.*/QT.webkit.libs = \$$\$$QT_MODULE_LI>
+
+       $(SED) 's/QT.webkit_private.includes =.*/QT.webkit_private.includes = \$$\$$QT_MODULE_INCLUDE_BASE\/QtWebKit\/5.212.0 \$$\$$QT_MODULE_INCLUDE_BASE\/QtWebKit\/5.212.0\/QtWebKit/g' -e 's/>
+
+       $(SED) 's/QT.webkitwidgets.includes =.*/QT.webkitwidgets.includes = \$$\$$QT_MODULE_INCLUDE_BASE \$$\$$QT_MODULE_INCLUDE_BASE\/QtWebKitWidgets/g' -e 's/QT.webkitwidgets.libs =.*/QT.webk>
+
+       $(SED) 's/QT.webkitwidgets_private.includes =.*/QT.webkitwidgets_private.includes = \$$\$$QT_MODULE_INCLUDE_BASE\/QtWebKitWidgets\/5.212.0 \$$\$$QT_MODULE_INCLUDE_BASE\/QtWebKitWidgets\&>
+endef
+QT5WEBKIT_POST_CONFIGURE_HOOKS += QT5WEBKIT_CONF_PRI
+
+define QT5WEBKIT_CREATE_SYMLINK
+       ln -sf $(HOST_DIR)/arm-buildroot-linux-gnueabihf/sysroot/usr/mkspecs/modules/*.pri $(HOST_DIR)/mkspecs/modules/
+       ln -sf $(HOST_DIR)/arm-buildroot-linux-gnueabihf/sysroot/usr/include/QtWebKit* $(HOST_DIR)/arm-buildroot-linux-gnueabihf/sysroot/usr/include/qt5/
+endef
+QT5WEBKIT_POST_INSTALL_STAGING_HOOKS += QT5WEBKIT_CREATE_SYMLINK
+
 QT5WEBKIT_CONF_OPTS += \
        -DENABLE_TOOLS=OFF \
        -DPORT=Qt \

内容的提问来源于stack exchange,提问作者kovarov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 18:34:55