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?手头这 ...
随机推荐
- CentOS7安装Nginx并部署
服务器IP是192.168.36.136 1.直接yum install nginx即可 2.主配置文件是/etc/nginx/下的nginx.conf,另外一个是/etc/nginx/conf.d/ ...
- td:first-child 伪类 匹配第一个 匹配第一个 <td> 元素
css代码: td:first-child{border-right: 1px solid #d9dbdd; } 备注:在下面的例子中,选择器匹配作为任何元素的第一个子元素的 p 元素: 链接:htt ...
- Nancy总结(一)Nancy一个轻量的MVC框架
Nancy是一个基于.net 和Mono 构建的HTTP服务框架,是一个非常轻量级的web框架. 设计用于处理 DELETE, GET, HEAD, OPTIONS, POST, PUT 和 PATC ...
- HTML5基本特性和新功能
HTML5的基本特征 1.向前兼容性 核心理念——平滑过渡! 不支持html5的浏览器可以向前兼容,并不会影响web内容的显示! 2.跨平台运行性 从pc浏览器到手机.平板电脑,甚至是智能电视. 只要 ...
- php Hash Table(三) Hash Table初始化
HashTable初始化,在使用HashTable之前要先执行初始化,下边就看看初始化时都做了什么, Zend/zend_hash.c static const Bucket *uninitializ ...
- Lua 之 userdata
Lua 之 userdata 在Lua中可以通过自定义类型(user data)与C语言代码更高效.更灵活的交互,从而扩展Lua能够表达的类型. full userdata full userdata ...
- css3d总结
3d舞台 设置 perspective(景深): length, 可以设置overflow:hidden 3d舞台下 -> 3d元素容器 设置 transform-style: preserv ...
- github常见操作和常见错误!
本人总结: 1.问题: fatal: Not a git repository (or any of the parent directories) 解决: 本地库还没有创建,请先用git init ...
- 存储过程中的when others then 和 raise
EXCEPTION when others then rollback; dbms_output.put_line('code:' || sqlcode); dbms_output.put_line( ...
- OCS 开放缓存服务
开放缓存服务( Open Cache Service,简称OCS)是在线缓存服务,为热点数据的访问提供高速响应.说白了,就是一款基于memcached开发的对外云缓存服务器,完全可以把OCS当成mem ...