前序
从事企业开发N久了,一直都有自己写一点跟个人爱好相关的东西,记得第一次在大学上网时,对windows95下的网页,打开源码看到HTML的内容时,感觉自己学习的c语言怎么这么不争气呢;后来专门找JavaScript的书学习了下,而至今JavaScript依然伴随工作。
而今的确想写点属于自己的东西,搞什么呢,什么都容易被山寨,搞游戏吧,有时祸国殃民;纵观趋势,最终浏览器将成为各种终端的终结者,所以就从这里开始吧。
开始了解WebKit
1:网站
2:作为浏览器引擎,自然离不开基本的HTML解析和JavaScript引擎了
WebKit's HTML and JavaScript code began as a branch of the KHTML and KJS libraries from KDE
http://konqueror.kde.org/features/browser.php
从官网说明看,WebKit所用的HTML和JavaScript来自于KHTML,KJS
3:当然跟时下流行的HTML5的趋势,SVG,MATHML,CSS,DOM都是不可缺少的
4:获取源码,尝试编译
准备工具VS2010
CYGWIN
QuickTime SDK(Media)
Directx SDK
32-bit version of Debugging Tools for Windows
Hotfix for 64-bit Windows to disable the user-mode callback filter for exceptions
5:编译过程
参考贴
http://hi.baidu.com/7472knarfnus/item/cefa8008b22bdc35a3332a97
http://www.cnblogs.com/likwo/archive/2012/05/09/2491687.html
6:记录编译过程
a:将webkit的构建包解压缩到C:\WebKit-r152754
b:安装QuickTime SDK到C:\Program Files\QuickTime SDK
c:安装DirectX SDK到C:\Microsoft DirectX SDK
d:启动Cygwin
huareal@gpx /cygdrive/c/WebKit-r152754/Tools/scripts
# ./update-webkit
Updating OpenSource
Checking Last-Modified date of WebKitAuxiliaryLibrary.zip...
Downloading WebKitAuxiliaryLibrary.zip...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1343k 100 1343k 0 0 137k 0 0:00:09 0:00:09 --:--:-- 158k
Installing WebKitAuxiliaryLibrary...
The WebKitAuxiliaryLibrary has been sucessfully installed in
/cygdrive/c/WebKit-r152754/WebKitLibraries/win
Setting the Environment Variable 'WEBKIT_LIBRARIES' to 'C:\WebKit-r152754\WebKitLibraries\win'
Setting the Environment Variable 'CYGWIN' to 'tty'
Setting the Environment Variable 'WEBKIT_OUTPUTDIR' to 'C:\WebKit-r152754\WebKitBuild'
Please restart your computer before attempting to build inside Visual Studio.
--build-webkit
# ./build-webkit
===============================================================================
WebKitSupportLibrary.zip could not be found in /cygdrive/c/WebKit-r152754.
Please download WebKitSupportLibrary.zip from:
https://developer.apple.com/opensource/internet/webkit_sptlib_agree.html
and place it in:
/cygdrive/c/WebKit-r152754
Then run build-webkit again.
===============================================================================
Died at ./build-webkit line 243.
需要下载WebKitSupportLibrary.zip,安装说明,下载后,复制到/cygdrive/c/WebKit-r152754
继续./build-webkit
# ./build-webkit
Installing WebKitSupportLibrary...
The WebKitSupportLibrary has been sucessfully installed in
/cygdrive/c/WebKit-r152754/WebKitLibraries/win
Building results into: /cygdrive/c/WebKit-r152754/WebKitBuild
WEBKIT_OUTPUTDIR is set to: C:\WebKit-r152754\WebKitBuild
Use of uninitialized value in print at /cygdrive/c/WebKit-r152754/Tools/scripts/webkitdirs.pm line 1644.
WEBKIT_LIBRARIES is set to:
/cygdrive/c/Program Files/Microsoft Visual Studio 10.0/Common7/IDE/devenv.com WebKit.vcxproj\WebKit.sln /build Release
Microsoft(R) Visual Studio 10.0.30319.1 版。
版权所有(C) Microsoft Corp。保留所有权利。
后面错误
尝试复制C:\WebKit-r152754\WebKitLibraries\win\tools\vsprops下的内容到
C:\tools\vsprops
再次编译
成功5个,失败24个
29>------ 已启动生成: 项目: AssembleBuildLogs, 配置: Release Win32 ------
========== 生成: 成功 5 个,失败 24 个,最新 0 个,跳过 0 个 ==========