在windows7、vs2013环境下编译webkit,本人测试成功

1、解压cygwinC盘下(建议放在C盘更目录下,否则编译期间会有部分文件找不到)

启动命令:C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico -

也可以从Cygwin.bat启动(若不是安装在C盘,则启动不了)

【注意】cygwin要用针对webkit的版本才行,这里提供下载地址(绿色版):

  http://pan.baidu.com/s/1bnb4kMz

 

2、安装两个SDK

DXSDK、quicktimesdk(webkit官方要求的)

 

3、安装vs2013(建议用默认路径)

安装vs2013之前,建议先装好ie10

 

4、安装Safari浏览器,因为编译完webkit运行时,需要用Safari的部分dll,目前暂不清楚用了哪些dll,如果没有安装,编译的时候,会提示缺少很多dll

 

5、下载webkit工程文件并做一些设置

a)、在http://nightly.webkit.org/  下载webkit工程文件,30M左右

b)、下载一个补丁包,WebKit Support Libraries。这个压缩包包含了Apple的几个非开源库的Windows port。下完后放在Webkit源码解压后的根目录:~/WebKit-r95481/(注意这个补丁包不要解压,build的时候脚本会自己搞定的)。

c)、设置五个环境变量

(1)WEBKIT_HOME:D:\WebKit-r164730

(2)WEBKIT_LIBRARIES :%WEBKIT_HOME%\WebKitLibraries\win

(3)WEBKIT_OUTPUTDIR:%WEBKIT_HOME%\WebKitBuild

(4)WEBKITLIBRARIESDIR:%WEBKIT_HOME%\WebKitLibraries\win

(5)WEBKITOUTPUTDIR:%WEBKIT_HOME%\WebKitBuild

d)、打开Cygwin,进入WebKit-r95481\Tools\Scripts文件夹运行三个脚本

(1)  ./update-webkit

(2)  ./ update-webkit-auxiliary-libs

(3)  ./ update-webkit-support-libs

其中(2)是下载安装WebKitAuxiliaryLibrary.zip,(3)是下载安装WebKitSupportLibrary,这个非常重要,如果不运行这个的话,是无法在VS中编译的。除非运行过build-webkit,而这个命令会首先自动运行update-webkit-support-libs。

6、设置编译选项:

a)         用VS打开WebKit/WebKit/win/WebKit.vcproj/WebKit.sln,选择正确的Configuration,也就是Debug和Release,选择Debug即可。

b)        选择DumpRenderTree, QTMovieWin, WebCore, WebKit, WinLauncher等所有项目(把c++项目的属性都设置一遍)的项目属性,左侧选择“C/C++”,将右侧的“Treat Warnings As Errors”(“将警告视为错误”)设置为“No”。这个必须设置。否则编译时会报错。

c)      右击WinLauncher,选择“设为启动项目”

7、修改两个文件,在两个图片里面:

(1)、这里,webkit官方的LocalizedString.cpp文件出现出现字符错误

(2)、改这里,是因为Safari浏览器的默认安装路径改变的原因

8F7,可以顺利编译完成。

win7、vs2013编译webkit总结的更多相关文章

  1. Win7 & VS2013 编译 WebKit 总结

      [转载请注明Moon出品: http://blog.csdn.net/lzl124631x] 距离上次编译WebKit(实际日期是2012年10月)已经过去一年多了, 这期间有很多人问我编译相关的 ...

  2. 使用VS2013编译webkit

    环境: win7_x64.VS2013 开始: 一.下载webkit 从网站"https://github.com/WebKit/webkit"下载webkit,我下载的版本最后的 ...

  3. VS2013编译WEBKIT

    0,安装VS2013:DXSDK_Jun10.exe:QuickTimeSDK.exe 1,WebKit-r174650.tar.bz2 以管理员解压(非管理员解压最后几下总是报错) 2,设置环境变量 ...

  4. Win7+VS2013初试Thrift

    win7环境下VS2013编译boost_1_58_0步骤: 官网下载boost_1_58_0(直接下载),解压 cmd窗口cd到boost_1_58_0,执行bootstrap.bat cmd窗口获 ...

  5. cocos2d-x -3.81+win7+vs2013开发环境创建新的项目

    cocos2d-x -3.81+win7+vs2013开发环境创建新的项目 1.准备阶段 (1) vs2013下载及安装 (2)cocos2d-x 3.8.1下载及解压 (3)python下载及安装( ...

  6. VS2013编译google protobuf 出现问题error C3861: “min”:

    问题描述: 今天用vs2013编译protobuf 2.4.1 报错: 错误 3 error C3861: "max": 找不到标识符 f:\google\protobuf\pro ...

  7. Vs2012(Vs2013) 编译 64位 Qt (动态库), 并使用自编译Qt建立工程(悲催经历)。(含遗留问题)

    仅供参考. 体会:我个人此次编译不该使用Vs2013编译Qt. 使用以下程序: Qt : qt-opensource-windows-x86-msvc2012_64_opengl-5.2.1.exe ...

  8. vs2013编译boost1.55.0 32/64位

    在使用vs2013编译boost-1.55.0之前,先要给boost做下修改: boost_1_55_0\boost\intrusive\detail\has_member_function_call ...

  9. VS2013编译python源码

    系统:win10 手头有个python模块,是用C写的,想编译安装就需要让python调用C编译器.直接编译发现使用的是vc9编译,不支持C99标准(两个槽点:为啥VS2008都还不支持C99?手头这 ...

随机推荐

  1. Tomcat路径下目录的介绍

           本文转自:http://blog.csdn.net/u013132035/article/details/54949593 下图是TOMCAT的路径下目录的截图. 目录有:backup. ...

  2. HDUOJ-------2149Public Sale

    Public Sale Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  3. Block编程注意的问题

    一,前言   block 是在 iOS 4 中引入的新特性,它和 C++ 11 中的 lamba 表达式概念相似,有时候也被称为闭包.经过一段时间的使用,我发现要用对用好 block 还是有不少需要注 ...

  4. Android开发学习之对话框浅析

    对话框式程序运行中弹出的窗口.Android系统中有四种默认的对话框:警告对话框AlertDialog.进度对话框ProgressDialog.日期选择对话框DatePickerDialog以及时间选 ...

  5. STM32 usb_mem.c和usb_sil.c文件的分析

    转:http://blog.csdn.net/u011318735/article/details/17424515 这两个c文件都还算是很简单的,先讲讲usb_mem.c这个文件.从文件名就能知道跟 ...

  6. mysql数据库以加索引方式提高性能

    数据库查询速率慢的情况下可以给对应的表加上对应的索引,能够有效的提高查询效率,mysql数据库添加索引的SQL入下: ALTER TABLE `table_name` ADD INDEX index_ ...

  7. 国外程序员整理的Java资源大全

    构建 这里搜集了用来构建应用程序的工具. Apache Maven:Maven使用声明进行构建并进行依赖管理,偏向于使用约定而不是配置进行构建.Maven优于Apache Ant.后者采用了一种过程化 ...

  8. gcc自有的define语法,解决变量多次自加的问题

    如果定义一个这样的宏: #define MAX(a,b) ((a)>(b)?(a):(b)) int main(void){ int a=5,b=10; MAX(a++,b++); printf ...

  9. Python中if __name__ == '__main__':作用

    #hello.pydef sayHello(): str="hello" print(str); if__name__=="__main__": print ( ...

  10. 使用jquery插件validate制作的表单验证案例

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...