有关webkit-gtk

本文记录了在Ubuntu 12.04 64位环境下编译WebKit-GTK (WebKit-r154098) 的过程及遇到的问题解决方法,包括升级GCC版本、启动脚本使用等,并分享了编译后的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

WebKit is now built (42m:48s). 
 To run GtkLauncher with this newly-built code, use the
 "Tools/Scripts/run-launcher" script.


3)注意编译成功后拷贝相应目录到其它电脑时,启动浏览器程序的脚本会出现问题,主要是该脚本是编译期间生成,hardcode了加载jbuild的模块的路径;除了这个问题可能还存在其它的。


Traceback (most recent call last):
  File "/home/luogw/study/webkit/webkit_nightly/WebKit-r154098/WebKitBuild/Dependencies/Root/bin/jhbuild", line 14, in <module>
    import jhbuild
ImportError: No module named jhbuild

if USE_CHECKOUT_SRC:
    sys.path.insert(0, '/home/luogw/study/webkit/WebKit-r154098/WebKitBuild/Dependencies/Source/jhbuild')
    pkgdatadir = None
    datadir = None
    import jhbuild
    srcdir = os.path.abspath(os.path.join(os.path.dirname(jhbuild.__file__), '..'))
else:


最大的感受:使用了jbuild来管理库的依赖,在编译目录下编译依赖的库,不像以前需要在系统环境安装一大堆依赖库。


webkit-gtk运行时动态库的加载路径:

1)webkit代码根目录/WebKitBuild/Dependencies/Root/lib64,(注:64位环境下)

即你可以设置LD_LIBRARY_PATH的值为上述路径,从而不需要run-launcher来启动GtkLauncher

在Linux系统中,`python-gtk2` 和 `python-webkit` 是用于开发图形界面应用程序的Python库,分别基于GTK+ 2.x和WebKitGTK+。以下是关于这两个库的详细信息和使用方式: ### python-gtk2 `python-gtk2` 是 Python 对 GTK+ 2.x 工具包的绑定,允许开发者使用 Python 编写具有图形用户界面的应用程序。GTK+ 是一个跨平台的 GUI 工具包,广泛用于 Linux 桌面应用程序的开发。 #### 安装 在基于 RPM 的系统(如 openSUSE)中,可以通过 `zypper` 安装: ```bash sudo zypper install python-gtk ``` #### 示例代码 以下是一个简单的 `python-gtk2` 应用程序示例,展示如何创建一个带有按钮的窗口并响应点击事件: ```python import gtk def on_button_clicked(widget): print("Button clicked!") window = gtk.Window(gtk.WINDOW_TOPLEVEL) window.set_title("Python GTK2 Example") window.set_size_request(300, 200) window.connect("destroy", gtk.main_quit) button = gtk.Button("Click Me") button.connect("clicked", on_button_clicked) window.add(button) window.show_all() gtk.main() ``` ### python-webkit `python-webkit` 是 WebKitGTK+ 的 Python 绑定,允许在 GTK+ 应用程序中嵌入网页渲染引擎。它通常与 `python-gtk2` 或 `python-gtk3` 一起使用,以显示 HTML 内容或构建基于 Web 的用户界面。 #### 安装 在基于 RPM 的系统(如 openSUSE)中,可以通过 `zypper` 安装: ```bash sudo zypper install python-webkit ``` #### 示例代码 以下是一个简单的 `python-webkit` 应用程序示例,展示如何加载并显示网页内容: ```python import gtk import webkit window = gtk.Window(gtk.WINDOW_TOPLEVEL) window.set_title("Python WebKit Example") window.set_size_request(800, 600) window.connect("destroy", gtk.main_quit) scrolled_window = gtk.ScrolledWindow() webview = webkit.WebView() webview.load_uri("https://www.example.com") scrolled_window.add(webview) window.add(scrolled_window) window.show_all() gtk.main() ``` ### 使用场景 - **python-gtk2**:适用于需要创建本地风格 GUI 的 Python 2.x 应用程序。虽然 GTK+ 3.x 已经成为主流,但许多遗留项目仍然使用 GTK+ 2.x。 - **python-webkit**:适用于需要在应用程序中嵌入 Web 内容的场景,例如开发基于 Web 的仪表盘、帮助文档查看器或简单的浏览器。 ### 注意事项 - `python-gtk2` 和 `python-webkit` 主要用于 Python 2.x 环境。对于 Python 3.x,建议使用 `PyGObject`(即 `gi.repository.Gtk`)和 `WebKit2GTK` 的绑定。 - 在某些系统上,`python-webkit` 可能依赖较旧版本的 WebKit,性能和安全性可能不如现代浏览器。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值