编译较新版本的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