QtWebKit研究(3):编译源代码

首先安装一些必须的工具,都是开源的,可以从网上下载:

注意:将上述工具安装在不带空格的路径上,比如不要安装在“C:Program Files”

接下来,设置path环境变量,加上perl, python以及GNU工具的可执行程序路径。另外,您还需要设置QTDIR环境变量指向Qt安装路径,并将%QTDIR%/bin添加到path环境变量。

最后,开始编译QtWebKit:

  • 打开Visual Studio 2008命令提示
  • 输入cd <your WebKit source path>
  • 输入命令perl ToolsScriptsbuild-webkit -qt –release

经过漫长的编译,结果出现如下所示的错误:

jscore.lib(OSRandomSource.obj) : error LNK2019: 无法解析的外部符号 __imp__CryptReleaseContext@8,该符号在函数 “void __cdecl WTF::cryptographicallyRandomValuesFromOS(unsigned char *,unsigned int)” (?cryptographicallyRandomValuesFromOS@WTF@@YAXPAEI@Z) 中被引用
jscore.lib(OSRandomSource.obj) : error LNK2019: 无法解析的外部符号 __imp__CryptGenRandom@12,该符号在函数 “void __cdecl WTF::cryptographicallyRandomValuesFromOS
(unsigned char *,unsigned int)” (?cryptographicallyRandomValuesFromOS@WTF@@YAXPAEI@Z) 中被引用
jscore.lib(OSRandomSource.obj) : error LNK2019: 无法解析的外部符号 __imp__CryptAcquireContextW@20,该符号在函数 “void __cdecl WTF::cryptographicallyRandomValuesFromOS(unsigned char *,unsigned int)” (?cryptographicallyRandomValuesFromOS@WTF@@YAXPAEI@Z) 中被引用
releasejsc.exe : fatal error LNK1120: 3 个无法解析的外部命令
NMAKE : fatal error U1077: “”D:Program FilesMicrosoft Visual Studio 9.0VCBINlink.EXE””: 返回代码“0×460”
Stop.
NMAKE : fatal error U1077: “”D:Program FilesMicrosoft Visual Studio 9.0VCBINnmake.exe””: 返回代码“0×2”
Stop.
NMAKE : fatal error U1077: “cd”: 返回代码“0×2”
Stop.

解决方法:修改SourceJavaScriptCoreJavaScriptCore.pri行中的

win32-* {
    LIBS += -lwinmm
}


win32-* {
    LIBS += -lwinmm -lAdvapi32
}

再次运行

perl ToolsScriptsbuild-webkit -qt –release

在WebKitBuildReleasebin目录下会生成QtTestBrowser.exe,这是一个简单的Qt浏览器,界面如下图所示:

QtTestBrowser

发表评论

电子邮件地址不会被公开。

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>