魔法风扇

导航

WebKit 编译笔记

WebKit 编译总结

 

我的安装环境是:

l window$7 32bit

l visiostudio2005 teamsuit中文版

l C盘应该空余1020G, 另一盘应该空余20G左右

l 磁盘格式应为NTFS,若为FAT32编译完成运行时会出现问题,失去响应。

 

1. 首先是下载相应组件,安装应该使用默认安装否则难以调试:

表格相应下载文件

需下载文件的文件名

说明

下载地址

cygwin-downloader.rar

官方推荐包,包含各种所需组件,应该按默认安装方式安装

http://vdisk.weibo.com/s/nFV-s

WebKit-r110587.tar.bz2

网上找了一圈,有人推荐这个(原因和详情参考:http://xjchilli.blog.163.com/blog/static/45347739201242443655321/),SVN各有各的问题,没整明白。。

http://builds.nightly.webkit.org/files/trunk/src/WebKit-r110587.tar.bz2

quicktimesdk.zip

好像要注册苹果ID才能下载

http://vdisk.weibo.com/s/nFVi_

DXSDK_Feb10.exe

网上说再新的版本就不支持了,Window$貌似把这个给跳转了,直接下不到。。

http://download.microsoft.com/download/F/1/7/F178BCE4-FA19-428F-BB60-F3DEE1130BFA/DXSDK_Feb10.exe

WebKitSupportLibrary.zip

这个是用来更新winlib文件的

http://vdisk.weibo.com/s/pzdd4

SafariSetup.exe

提供环境

http://support.apple.com/kb/dl1531

chs_vs_2005_VSTS_180_Trial.img

中文版VS2005 team suit 180天 试用版

http://download.microsoft.com/download/b/a/6/ba691c56-8833-446c-82fe-cf94b588a622/chs_vs_2005_VSTS_180_Trial.img

 

2. 安装

a) WebKit-r110587.tar.bz2源码解压到d:\WebKit下(d:\WebKit即为工程的根目录),WebKitSupportLibrary.zip直接复制到工程根目录(d:\WebKit)下,不要解压

b) 给vs2005打补丁,很重要。如果为中文版就要打sp1INTLvista\Win7补丁、后缀为X86-CHS.exe的补丁(英文版相应后缀为X86-ENU,比中文版多),结合官网信息参考安装http://www.webkit.org/building/tools.html

c) 管理员身份运行cygwinmintty or whatevercd /cygdrive/d/WebKit/Tools/Scripts下,运行./update-webkit(更新winlib文件,听说还会更新svn,但由于是轻量代码版没有svn信息,更新较快),也可以运行下./update-webkit-support-libs额 应该有用吧,../Tools/Scriptsset-webkit-configuration脚本可以进行简单设置,看着像默认为x86_64环境,抱着试试看的心态在./set-webkit-configuration --debug --32-bit之后生成的WebKitBuild目录下建立文本文件Architecture里面写x86(或者应该写x86_32?,像同目录下可以自动生成的Configuration里已经有的Debug

d) 这一步分为几个小部分:

i. 添加环境变量(系统变量和用户变量各添加一次):

1. WEBKIT_DIR D:\WebKit

2. WEBKITLIBRARIESDIR %WEBKIT_DIR%\WebkitLibraries\win

3.  WEBKITOUTPUTDIR %WEBKIT_DIR%\WebKitBuild

4. DXSDK_DIR C:\Program Files\Microsoft DirectX SDK (February 2010)\Include

5. PRODUCTION %WEBKIT_DIR%\Production(好像没用)

ii. Cygwin中文化,vimencoding设置为gbk,右键options->Text->Locale设置为zh_CNCharacter setGBK,这样vim和目录都支持win环境了(不设置亦可,不过后面中文显示不正常而已,另外~/.bash_profile还添加了alias ls='ls --color=auto --show-control-chars' 和export LESSCHARSET=latin1,加点颜色)

iii. 修改部分文件:

1. D:\WebKit\Source\WebCore\platform\LocalizedStrings.cpp文件263行、265行引号(比如改为"Look Up \"%@\"", 和 "Look Up \"<selection>\"",,否则编译出错)

2. D:\WebKit\WebKitLibraries\win\tools\vsprops\common.vsprops中WarnAsError="true"为WarnAsError="false"(应该有两处,编译时有些warning会成为错误引起中断,这里消除它

iv. 执行./build-webkit(由于之前设置为debug,否则要执行./build-webkit --debug),静等出错,XD233333,出错是正常滴(快蜂鸟)

3. VS里打开解决方案:D:\WebKit\Source\WebKit\win\WebKit.vcproj\WebKit.sln,作以下设置:

a) 解决方案设置为Debug

b) 打开工具->选项->项目和解决方案->VC++目录包含文件添加C:\Program Files\Microsoft DirectX SDK (February 2010)\Include,库文件添加C:\Program Files\Microsoft DirectX SDK (February 2010)\Lib\x86

c) 设置WebKit为启动项目

d) 由于之前设置过warning不视为error这里就不用设置什么了,否则就挨个项目配置属性C/C++设置“将警告设为错误”为“否”

e) 设置WebKit通用属性->调试,命令 $(PROGRAMFILES)\Safari\Safari.exe,环境 WEBKITNIGHTLY=$(OutDir)(其实是后面调试才有用,早晚都得调嘛)

4. 检查以上无误,生成解决方案。附生成顺序,方便手动依次观察:WTFGenerated-> WTF-> JavaScriptCoreGenerated-> JavaScriptCore-> WebCoreGenerated-> QTMovieWin-> WebCore-> Interfaces-> WebKitGUID-> WebKitLib-> WebKit2Generated-> WebKit-> WebKit2Process-> testapi-> testRegExp-> WinLauncher-> WinLauncherLauncher-> TestNetscapePlugin-> ImageDiff-> ImageDiffLauncher-> WebCoreTestSupport-> DumpRenderTree-> DumpRenderTreeLauncher-> WebKitLauncherWin-> record-memory-win-> InjectedBundleGenerated-> InjectedBundle-> WebKitTestRunner-> WebKitTestRunnerLauncher-> gtest-md-> TestWebKitAPIGenerated-> TestWebKitAPI-> TestWebKitAPIInjectedBundle-> MiniBrowser-> MiniBrowserLauncher

5. 编译成功?启动调试吧

posted on 2013-02-25 19:09  魔法风扇  阅读(508)  评论(0编辑  收藏  举报