Win7 & VS2013 编译 WebKit 总结
距离上次编译WebKit(实际日期是2012年10月)已经过去一年多了, 这期间有很多人问我编译相关的问题, 我由于时间关系没有回复这些朋友, 先在这里说声抱歉.
Special thanks to Roger Fong for his generous help and patience.
Operating System: Windows 7 Ultimate 32-bit
Processor: Intel Core i7 860
Installed Memory: 4.00 GB
1. Installing VS2013:
a. Install Win7 SP1 (windows6.1-KB976932-X86.exe)
b. Install 5 patches for IE10
ⅰ. Windows6.1-KB2533623-x86.msu
ⅱ. Windows6.1-KB2670838-x86.msu
ⅲ. Windows6.1-KB2729094-v2-x86.msu
ⅳ. Windows6.1-KB2731771-x86.msu
ⅴ. Windows6.1-KB2786081-x86.msu
c. Install IE10 (IE10-Windows6.1-x86-en-us.exe)
d. Install VS2013 (VS2013_RTM_ULT_ENU.iso)
e. Right click on "C:\Program Files\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe", "Properties", "Compatibility", check "Run this program as an administrator".
2. Installing Cygwin
a. Download cygwin-downloader.zip (http://svn.webkit.org/repository/webkit/trunk/Tools/CygwinDownloader/cygwin-downloader.zip) and unzip it.
b. Run cygwin-downloader.exe and wait...
c. Run setup.exe, select "Install from Local Directory" and install.
d. Run setup.exe, select "Install from Internet"
i. In steps before "Select Packages", just select default folders, whatever connection and download site.
ⅱ. Select Packages: Search "gcc", expand Devel, select "gcc-g++: GNU Compiler Collection(C++)"
ⅲ. Select Packages: Search "gdb", expand Devel, select "gdb: The GNU Debugger"
See more at "Installing gcc with Cygwin"(http://www.eecg.utoronto.ca/~aamodt/ece242/cygwin.html)
e. Open C:\cygwin\etc\profile
ⅰ. Modify line 32 to PATH="/bin:${PATH}"
ⅱ. Comment line 44-50 (related to TMP variable) by adding '#' at the beginning of each line.
3. Installing SDKs
a. Install QuickTime SDK (https://developer.apple.com/quicktime/)
b. Install Direct SDK (June 2010 DirectX SDK:http://www.microsoft.com/en-us/download/details.aspx?id=6812)
4. Getting the Code
a. Download Nightly Build (http://nightly.webkit.org/) and unzip it. My version is WebKit-r161524.
b. Suppress Warning 4309: Open "WebKitLibraries/win/tools/vsprops/common.props", find tag <DisableSpecificWarnings>, add 4309.
c. Download Support Library (https://developer.apple.com/opensource/internet/webkit_sptlib_agree.html) and copy it into WebKit-r161524. DO NOT unzip it.
d. Open Source/WebCore/platform/LocalizedString.cpp, search "Look Up", delete the DOUBLE-BYTE double quotation marks around “%@” and “<selection>”.
5. Save the following lines as a .cmd/.bat file (Build.cmd, for example), and put it into the WebKit-r161524 directory.
- @echo off
- echo Setting up links...
- set CYGWIN_DIR=C:\cygwin
- set WEBKIT_SOURCE_DIR=%~dp0%
- if "%WEBKIT_SOURCE_DIR:~-1%"=="\" set WEBKIT_SOURCE_DIR=%WEBKIT_SOURCE_DIR:~0,-1%
- for /R "delims=\" %%a in (%WEBKIT_SOURCE_DIR%) do set WEBKIT_DIR_NAME=%%~nxa
- set WEBKIT_LINK_DIR=%CYGWIN_DIR%\home\%username%\%WEBKIT_DIR_NAME%
- if exist "%WEBKIT_LINK_DIR%" rmdir "%WEBKIT_LINK_DIR%"
- mklink /D "%WEBKIT_LINK_DIR%" "%WEBKIT_SOURCE_DIR%"
- echo Exporting environment varibles...
- set WEBKIT_OUTPUTDIR=%WEBKIT_LINK_DIR%\WebKitBuildByCygwin
- set WEBKIT_LIBRARIES=%WEBKIT_LINK_DIR%\WebKitLibraries\win
- set VSINSTALLDIR=%VS120COMNTOOLS%..\..
- set PATH=%WEBKIT_LINK_DIR%\Tools\Scripts;%PATH%
- echo Running Cygwin...
- call "%CYGWIN_DIR%\Cygwin.bat"
- :exit
6. Build
a. run Build.cmd
b. update-webkit
c. build-webkit --debug | tee WebKit-r161524/log.txt
Other Material:
a. Building on Windows:http://trac.webkit.org/wiki/BuildingOnWindows (WebKit Team's note on building on windows)
b. WebKit Wiki: http://trac.webkit.org/wiki/WikiStart
Error Solutions:
---------------------------------------------------------------------
Error Message:
17> sh: /usr/bin/gcc: No such file or directory
17> Failed to read names from file: /cygdrive/g/WEBKIT~1/Source/WebCore/html/HTMLTagNames.in at /cygdrive/g/WEBKIT~1/Source/WebCore/dom/make_names.pl line 324.
17> /cygdrive/g/WEBKIT~1/Source/WebCore/DerivedSources.make:942: recipe for target 'HTMLElementFactory.cpp' failed
17> make: *** [HTMLElementFactory.cpp] Error 127
17> make: *** Waiting for unfinished jobs....
17> ./CSSGrammar.y:62.1: error: syntax error, unexpected end of file
Solution:
Install gcc to Cygwin (step 2.d).
---------------------------------------------------------------------
Error Message:
17> build-generated-files.sh: line 59: cd: /home/Moon/WEBKIT~1/WEBKIT~2/Debug/obj32/WebCore/DerivedSources: Permission denied
18> c1xx : fatal error C1083: Cannot open source file: 'C:\cygwin\home\Moon\WebKit-r161524\WebKitBuildByCygwin\Debug\obj32\WebCore\DerivedSources\CSSPropertyNames.cpp': No such file or directory
Solution:
Right click on "C:\Program Files\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe", "Properties", "Compatibility", check "Run this program as an administrator"
---------------------------------------------------------------------
Error Message:
..\platform\LocalizedStrings.cpp(248): error C2001: newline in constant
Or
..\platform\LocalizedStrings.cpp(250): error C2001: newline in constant
Solution:
Open Source/WebCore/platform/LocalizedString.cpp, search "Look Up", delete the DOUBLE-BYTE double quotation marks around “%@” and “<selection>”.
Win7 & VS2013 编译 WebKit 总结的更多相关文章
- win7、vs2013编译webkit总结
在windows7.vs2013环境下编译webkit,本人测试成功 1.解压cygwin到C盘下(建议放在C盘更目录下,否则编译期间会有部分文件找不到) 启动命令:C:\cygwin\bin\min ...
- 使用VS2013编译webkit
环境: win7_x64.VS2013 开始: 一.下载webkit 从网站"https://github.com/WebKit/webkit"下载webkit,我下载的版本最后的 ...
- VS2013编译WEBKIT
0,安装VS2013:DXSDK_Jun10.exe:QuickTimeSDK.exe 1,WebKit-r174650.tar.bz2 以管理员解压(非管理员解压最后几下总是报错) 2,设置环境变量 ...
- Win7+VS2013初试Thrift
win7环境下VS2013编译boost_1_58_0步骤: 官网下载boost_1_58_0(直接下载),解压 cmd窗口cd到boost_1_58_0,执行bootstrap.bat cmd窗口获 ...
- cocos2d-x -3.81+win7+vs2013开发环境创建新的项目
cocos2d-x -3.81+win7+vs2013开发环境创建新的项目 1.准备阶段 (1) vs2013下载及安装 (2)cocos2d-x 3.8.1下载及解压 (3)python下载及安装( ...
- VS2013编译google protobuf 出现问题error C3861: “min”:
问题描述: 今天用vs2013编译protobuf 2.4.1 报错: 错误 3 error C3861: "max": 找不到标识符 f:\google\protobuf\pro ...
- Vs2012(Vs2013) 编译 64位 Qt (动态库), 并使用自编译Qt建立工程(悲催经历)。(含遗留问题)
仅供参考. 体会:我个人此次编译不该使用Vs2013编译Qt. 使用以下程序: Qt : qt-opensource-windows-x86-msvc2012_64_opengl-5.2.1.exe ...
- vs2013编译boost1.55.0 32/64位
在使用vs2013编译boost-1.55.0之前,先要给boost做下修改: boost_1_55_0\boost\intrusive\detail\has_member_function_call ...
- VS2013编译python源码
系统:win10 手头有个python模块,是用C写的,想编译安装就需要让python调用C编译器.直接编译发现使用的是vc9编译,不支持C99标准(两个槽点:为啥VS2008都还不支持C99?手头这 ...
随机推荐
- 以sysdba身份登录oracle报ORA-1031权限不足错误之完美分析
在linux 操作系统的数据库服务器上,使用”sqlplus / as sysdba” 登录Oracle 10.2 数据库实例时,登录失败,显示ORA-01031: 权限不足. 在数据库所在服务器上 ...
- 9月14日JavaScript循环语句作业解析
1.一张纸的厚度是0.0001米,将纸对折,对折多少次厚度超过珠峰高度8848米 解法一: var gd = 8848; var cs = 0; while(true) { cs++; gd = gd ...
- UDP 网络通信 C#
接收端 using System; using System.Net; using System.Net.Sockets; using System.Text; using System.Thre ...
- JSP EL表达式
1 EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获取数据 EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数 ...
- VS插件开发,启用实验室环境
启用外部程序: C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe 命令行参数 /rootsuffix ...
- WebGrid with filtering, paging and sorting 【转】
WebGrid with filtering, paging and sorting by Jose M. Aguilar on April 24, 2012 in Web Development A ...
- jQuery里$(this)和this的区别在哪?
$(this)是jquery对象,能调用jquery的方法,例如click(), keyup().而this,则是html元素对象,能调用元素属性,例如this.id,this.value.例如假设已 ...
- Linux平台延时之sleep、usleep、nanosleep、select比较
Linux平台延时之sleep.usleep.nanosleep.select比较 标签: 嵌入式thread线程cpu多线程 2015-05-05 15:28 369人阅读 评论(0) 收藏 举报 ...
- C#反射机制(转)
一:反射的定义 审查元数据并收集关于它的类型信息的能力.元数据(编译以后的最基本数据单元)就是一大堆的表,当编译程序集或者模块时,编译器会创建一个类定义表,一个字段定义表,和一个方法定义表等. Sys ...
- Highcharts X轴名称太长,如何设置下面这种样式
Highcharts所有的图表除了饼图都有X轴和Y轴,默认情况下,x轴显示在图表的底部,y轴显示在左侧(多个y轴时可以是显示在左右两侧),通过chart.inverted = true 可以让x, ...